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。

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

  • 相关阅读:
    04: vue生命周期和实例属性和方法
    03: vuejs 事件、模板、过滤器
    (打补丁 )patch
    zabbix安装
    zabbix简介
    linux 虚拟网络模型介绍
    虚拟化
    虚拟化分类(半虚拟化和全虚拟化)
    playbook详解—YAML格式的文本
    ansible的介绍和一些基本模块介绍
  • 原文地址:https://www.cnblogs.com/fanxiaopeng/p/3680310.html
Copyright © 2011-2022 走看看