zoukankan      html  css  js  c++  java
  • js 不同浏览器兼容性(转)

    1.window.event

    表示当前的时间对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象

    2.获取事件源

    IE用srcElement获取事件源,而FF用target获取事件源

    以上两个兼容通常会这么写:

    var evt = e||event;
    
    var el = evt.srcTarget || evt.srcElement;

    3.添加、去除事件

    4.获取标签的自定义属性

    IE:div1.value或div1['value']

    FF:可用div1.getAttribute("value")

    5.document.getElemntByName()和document.all[name]

    IE不可以,

    FF可以

    6.input.type的属性

    7.IE支持innerText、outerHTML

    FF:支持textContent

    8.窗口的位置

    IE、chrome、safari:支持使用window.screenLeft和window.screenTop

    IE8以上、chrome、safari、firefox:支持使用window.screenX和window.screenY

    兼容代码可以使用下面这段代码:

    var leftX = typeof window.screenLeft == 'number' ? window.screenLeft : window.screenX;
    
    ver topY = typeof window.screenTop == 'number' ? window.screenTop : window.screenY;
    

    9.窗口的大小

    firefox、chrome、IE9和safari:window.innerWidth和window.innerHeight

    IE系列:document.body.clientWidth和document.body.clientHeight

    不是IE6:document.documentElement.clientWidth和document.documentElement.clientHeight

    兼容代码可以这样子写

    //code from http://caibaojian.com/js-ie-different-from-firefox.html
    var width = window.innerWidth;
    
    var height = window.innerHeight;
    
    if(typeof width != 'number'){
    
    if(document.compatMode == 'CSS1Compat'){
    
    width = document.documentElement.clientWidth;
    
    height = document.docuementElement.clientHeight;
    
    }else{
    
    width = document.body.clientWidth;
    
    height = document.body.clientHeight;
    
    }
    

    以上内容参考网络,由于本人学习的javascript知识还比较少,暂时不认识,所以提前学习,以便以后遇到能够快速的识别。这篇文章后面将会继续更新添加。

  • 相关阅读:
    jQuery 基本选择器
    JavaScriptif while for switch流程控制 JS函数 内置对象
    JavaScrip基本语法
    数据库 存储引擎 表的操作 数值类型 时间类型 字符串类型 枚举集合 约束
    数据库基础知识 管理员 用户登录授权的操作
    粘包的产生原理 以及如何解决粘包问题
    socket TCP DPT 网络编程
    2018年年终总结
    Android技术分享
    No accelerator found
  • 原文地址:https://www.cnblogs.com/joesbell/p/5827407.html
Copyright © 2011-2022 走看看