• 浏览器差异总结,可以用此判断浏览器版本(转)


    总结一下浏览器间的差异如下:

    1.safari下,typeof nodeList的类型为function

    2.在大多数游览器中checkbox的value默认为on,唯有chrome返回空字符串

    3.某些浏览器不支持w3c的cssFloat属性来获取浮动样式,而是使用独家的styleFloat属性

    4.IE678的getElementByTagName(“*”)无法遍历出Object元素下的param元素(bug)

    5.IE678不能通过innerHTML生成link,style,script节点(bug)

    6.IE6789由于无法识别HTML5的新标签,因此复制这些新元素时也不正确(bug)

    7.在标准浏览器下,cloneNode(true)是不复制事件的,以防止循环引用无法释放内存,而IE却没有考虑到这一点,把事件复制了(inconformity)

    8.IE67不支持display:inline-block,需要通过hasLayout方法去模拟(bug)

    9.透明度

    10.标准浏览器只有在table与tr之间不存在tbody的情况下添加tbody,而IE678则笨多了,即在里面为空也乱加tbody

    11.mouseenter,mouseleave只有IE支持,但它们比mouseover mouseout性能好,因此各库都有模拟的实现

    12.innerText火狐不支持,它使用的是textContent

    自 navigator 对象的信息具有误导性,不应该被用于检测浏览器版本,这是因为:
    navigator 数据可被浏览器使用者更改。
    浏览器无法报告晚于浏览器发布的新操作系统

    所以很多时候,我们可以通过这些浏览器的兼容特性来判断是什么浏览器。

    浏览器检测

    由于 navigator 可误导浏览器检测,使用对象检测可用来嗅探不同的浏览器。
    由于不同的浏览器支持不同的对象,您可以使用对象来检测浏览器。例如,由于只有 Opera 支持属性 "window.opera",您可以据此识别出 Opera。
    例子:if (window.opera) {...some action...}

  • 相关阅读:
    总结ASP.NET C#中经常用到的13个JS脚本代码
    C# 处理 JSON 常用的帮助类
    C# 中移动文件到指定位置
    C# 常用时间戳处理方法
    c#批量上传图片到服务器示例分享
    C# 通过URL获取图片并显示在PictureBox上的方法
    QT中Qtableview视图表格中点击表头进行排序
    qt QTableWidget&&QTableView 导出数据到excel
    51nod 1242 斐波那契数列的第N项
    矩阵快速幂
  • 原文地址:https://www.cnblogs.com/junxtx/p/4139859.html
Copyright © 2020-2023  润新知