zoukankan      html  css  js  c++  java
  • javascripy的innerHTML在IE8下的异常

    使用jQuery的datatable插件的时候发现,IE8下显示异常,仔细调查一番,发现是浏览器对innerHTML的差异导致的。

    实例代码:

    	var nTd = document.createElement('td');
    	nTd.innerHTML = 'abc&def';
    	alert(nTd.innerHTML);
    

      IE8 alert结果: abc

      firefox 24 alert结果:abc&def

    可以看出,当把字符串传给innerHTML的时候,浏览器进行了处理,比如大小写转换,对于'<span>abc</SPAN>':

      IE8 alert结果: <SPAN>abc</SPAN>

      firefox 24 alert结果:<span>abc</span

    对于'<span>abc&def</SPAN>':

      IE8 alert结果: <SPAN>abc&amp;def</SPAN>

      firefox 24 alert结果:<span>abc&amp;def</span

    对于'<span>abc&amp;def</SPAN>':结果同上

      IE8 alert结果: <SPAN>abc&amp;def</SPAN>

      firefox 24 alert结果:<span>abc&amp;def</span

    结论:

    可以认为这是一个bug,在对字符串进行处理的时候,IE8做的有问题。可以对存入datatable表格中的数据做HTML escape处理,可以避免这个bug。

    具体权威一点的解释还没有找到,如果谁知道,欢迎留言!

  • 相关阅读:
    项目成本管理(三)
    项目成本管理(二)
    项目成本管理(一)
    男士香水
    荷兰猛兽-梅尔文训练体能
    PP学习笔记-业务基础
    SAP入行就业
    PP学习笔记02
    BZOJ 3012: [Usaco2012 Dec]First! 字典树 + tarjan
    CF319E Ping-Pong 线段树 + vector + 思维
  • 原文地址:https://www.cnblogs.com/fanxiaopeng/p/3680310.html
Copyright © 2011-2022 走看看