最近可能时运不济,经常遇到一些超出常规的怪问题!下面是一个有关IE浏览器对注释解析的bug,问题虽小,但改起来却着实让人头痛啊!
好吧,废话少说,直接看问题:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>test</title> </head> <body> <input type="button" onclick="test();" value="click me"> <div id="test"> </div> </body> <script type="text/javascript"> function test(){ var string = 'test<!--<![endif]--><!--[if gte mso 10]>-->这里的内容在IE下将不会被显示'; document.getElementById('test').innerHTML = string; } </script> </html>
这样的一段代码在非IE浏览器下运行正常,但是IE9及以下版本上,会出现解析错误!问题出在string字符串中注释的XML语句,如有路过的大牛有幸看到这篇文章,烦请帮小弟解释一下出现这种问题的原因!不胜感激,不胜感激!
浙公网安备 33010602011771号