• AjaxIE和FIREFOX 脚本的一些区别


    1:innerText
    IE支持,FIREFOX不支持
    解决办法:用innerHTML,2种浏览器都识别innerHTML

    2:document.createElement
    document.appendChild
    在往表里插入行时
    FIREFOX支持,IE不支持
    解决办法:把行插入到TBODY中,不要直接插入到表

    3:setAttribute('style','color:red;')
    FIREFOX支持(除了IE,现在所有浏览器都支持),IE不支持
    解决办法:不用setAttribute('style','color:red')
    而用object.style.cssText = 'color:red;'(这写法也有例外)
    最好的办法是上面种方法都用上,万无一失 ^_^
    4:class
    setAttribute('class','styleClass')
    FIREFOX支持,IE不支持(指定属性名为CLASS,IE不会设置元素的CLASS属性,相反只使用SETATTRIBUTE时IE自动识别CLASSNAME属性)
    解决办法:
    setAttribute('class','styleClass')
    setAttribute('className','styleClass')
    2种都用上

    5:用setAttribute设置事件
    var obj = document.getElementById('objId');
    obj.setAttribute('onclick','funcitonname();');
    FIREFOX支持,IE不支持
    解决办法:
    IE中必须用点记法来引用所需的事件处理程序,并且要用赋予匿名函数
    如下:
    var obj = document.getElementById('objId');
    obj.onclick=function(){fucntionname();};
    这种方法所有浏览器都支持

    6:建立单选钮
    IE以外的浏览器
    var rdo = document.createElement('input');
    rdo.setAttribute('type','radio');
    rdo.setAttribute('name','radiobtn');
    rdo.setAttribute('value','checked');

    IE:
    var rdo =document.createElement("<input type='radio' name='radiobtn' value='checked'>");
    解决办法:
    这一点区别和前面的都不一样。这次完全不同,所以找不到共同的办法来解决,那么只有IF-ELSE了
    万幸的是,IE可以识别出document的uniqueID属性,别的浏览器都不可以识别出这一属性。问题解决。

    0:共同的一些技巧
    在动态建立INPUT型输入元素时,一般是先加入,在设置TYPE。这就有可能出错

    好习惯:var btn = document.createElement('input');
    btn.setAttribut('type','button');
    document.getElementById('formId').appendChild(btn);

  • 相关阅读:
    Spring实践第三天 (SpringDI:依赖注入)
    单例模式(Singleton)
    Spring IOC 及 Spring 中Bean的三种创建方式
    Spring实践第二天(创建对象的三种基本方式)
    ORA-28374: typed master key not found in wallet
    Unable open dabase as spfile parameter incorrect
    【java/C# 服务器】IOS 配置推送证书 p12文件流程
    第一贱-UILabel
    iOS开发系列--让你的应用“动”起来
    AFNetworking 使用总结
  • 原文地址:https://www.cnblogs.com/ifonly/p/2794948.html
Copyright © 2020-2023  润新知