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。

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

  • 相关阅读:
    JSON
    在ubuntu上部署Django
    Django安装
    Python3 编程第一步
    Python3 字典
    nginx 服务器下载安装配置详解
    彻底删除Navicat注册表
    JS 对输入的姓名 手机号码 邮箱做校验
    mysql 启动报错
    网线没问题 没法上网
  • 原文地址:https://www.cnblogs.com/fanxiaopeng/p/3680310.html
Copyright © 2011-2022 走看看