zoukankan      html  css  js  c++  java
  • IE和FF区别关于css和js

    css

    1.ul标签FF中有padding值,没有margin,IE中相反
    解决办法:将ul的padding和margin都设为0,
    js
    1.IE中innerText在火狐中没有,使用textContext;
    2.在ajax中返回对象状态IE使用readystate,火狐中必须是readyState,所以最好都写成readyState
    3.获取IE和FF中的键盘返回值,
    <input type="text" onkeyUp="test(event)"/> 
    function test(e) { 
    var keyc=GetKeyCode(e); 
    alert(keyc); 
    function GetKeyCode(e) {//取得不同浏览器下的键盘事件值 
    var keyc; 
    if(window.event) {//ie键盘事件 
    keyc=e.keyCode; 
    } else if (e.which) {//火狐 
    keyc=e.which; 
    return keyc; 
    4.为对象添加移除事件 
    var obj=document.getElementById("_tname'); 
    添加事件: 
    if(obj.attachEvent) { 
    obj.attachEvent("onchange",function() { 
    otherfunction(params);//这里可以给其实方法传参,也可以直接调用其它方法 
    }); 
    } else if(obj.addEventListener) { 
    obj.addEventListener("change",function() { 
    otherfunction(params); 
    },false); 
    移除事件: 
    obj.onclick=null; 
    /*下面的代码为什么不行,IE下输出obj.onclick竟然为anonymous,希望高手能帮忙解决 
    if(obj.detachEvent) { 
    obj.detachEvent("onchange",test); 
    } else if(obj.removeEventListener) { 
    obj.removeEventListener("change",test,false); 
    }*/ 
    5. 
    IE中event.x和event.y 
    在FF中只有event.pageX,event.pageY 
    都有event.clientX和event.clientY属性 
    解决办法: 
    var x=e.x?e.x:e.pageX;//e为event对象传进来的参数 
    6.IE下 input.type属性为只读,但是MF下可以修改 
    7.在 IE 中,getElementsByName()、(document.all[name] (还未测试成功))均不能用来取得 div元素(是否还有其它不能取的元素还不知道)。 
    8.通过js来触发事件 
    <script type="text/javascript"><!-- 
    function handerToClick(){ 
    var obj=document.getElementById("btn1"); 
    if(document.all){//IE中 
    obj.fireEvent("onclick"); 
    } else { 
    var e=document.createEvent('MouseEvent'); 
    e.initEvent('click',false,false); 
    obj.dispatchEvent(e); 
    // --></script> 
    <input type="button" value="btn1" id="btn1" onclick=" alert('按钮btn1的click事件') " /> 
    <input type="button" value="触发ID为btn1的onclick事件" onclick=" handerToClick() " /> 
    9.IE下event对象有srcElement属性,Firefox下,event对象有target属性 
    var obj=e.srcElement?e.srcElement:e.target;//e为event对象传进来的参数 
    //从这里下面的还未测试 
    10.在FF中自己定义的属性必须getAttribute()取得 
    11.节点问题 
    IE中使用parentElement parement.children,而FF中使用parentNode parentNode.childNodes 
    childNodes的下标的含义在IE和FF中不同,FF使用DOM规范,childNodes中会插入空白文本节点。 
    FF中节点没有removeNode方法,必须使用如下方法 node.parentNode.removeChild(node) 
  • 相关阅读:
    Java输出错误信息与调试信息
    Java实现两个变量的互换(不借助第3个变量)
    Java用三元运算符判断奇数和偶数
    使用webpack-dev-server设置反向代理解决前端跨域问题
    springboot解决跨域问题(Cors)
    Spring boot集成swagger2
    Redis学习汇总
    【年终总结】2017年迟来的总结
    Springboot项目maven多模块拆分
    Maven实现多环境打包
  • 原文地址:https://www.cnblogs.com/xlz307/p/3428181.html
Copyright © 2011-2022 走看看