• firefox、IE下的几个不同属性的方法调用


    声明:document.all:该对象只有IE中才存在,故用该对象来判断浏览器的类型

    一、IFRAME的对象

    在IE下可通过document.frames["id"];得到该IFRAME对象,

    而在火狐下则是通过document.getElementById("content_panel_if").contentWindow;

    代码如下:

     
    1. if(!document.all){  //火狐中得到IFRAME的对象   
    2.     _Frame=document.getElementById("id").contentWindow;   
    3. }else{   
    4.      _Frame=document.frames["id"];
    5. }  

    二、得到对象的第一个子元素

     IE的写法: _tbody=_table.childNodes[0]

    在FF中,firefox会在子节点中包含空白则第一个子节点为空白"#text", 而ie不会返回空白

    可以通过if("#text" != node.nodeName)过滤掉空白子对象

    三、添加背景图片

     
    1. if(!document.all){   
    2.        var _tempSrc="xx\xx\xx.gif";   
    3.        _tempSrc=_tempSrc.replace(/\\/g,"/");  //全部替换   
    4.      markerDiv.style.backgroundImage="url("+_tempSrc+")";   
    5. }else{   
    6.         markerDiv.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.icon.src    
    7. ", sizingmethod=scale);";  //火狐不支持这种写法   
    8. }  

    四、模拟CLIKC事件

    如该实例:

     
    1. <a href="#" onclick="test(1)" id="a3">hello</a>
    2. <a href="#" onclick="test2(1)" id="b3">hello2</a>
    3. <script language="javascript">  
    4. <!--  
    5. function test(num){  
    6.     window.alert(num);  
    7. }  
    8. function test2(num)  
    9. {  
    10.     if(document.all){  //ie下 
    11.         document.getElementById("a3").click();  
    12.     }
    13.     else{  
    14.         var evt = document.createEvent("MouseEvents");  
    15.         evt.initEvent("click"truetrue);  
    16.         document.getElementById("a3").dispatchEvent(evt);  
    17.     }  
    18. }  
    19. //-->  
    20. </script>


     event.initEvent(eventType,canBubble,cancelable) :

     initEvent 该方法将初始化 Document.createEvent() 方法创建的合成 Event 对象的 type 
     属性、bubbles 属性和 cancelable 属性。 只有在新创建的 Event 对象被 Document 对象或 Element 
    对象的 dispatchEvent() 方法分派之前,才能调用 Event.initEvent() 方法。

    五、attachEvent函数

    if (isIE){window.attachEvent("onload", init);}else{window.addEventListener("load", init, false);}

  • 相关阅读:
    Spring Aop
    Java 内存分配
    wrapper class (Integer 为例)
    asp.net mvc 中"未找到路径“/favicon.ico”的控制器或该控制器未实现 IController。"
    .Net反射机制
    设计模式系列一创建型之(抽象工厂模式)
    设计模式系列一创建型之(单件模式)
    设计模式系列二结构型之(装饰者模式)
    设计模式系列二结构型之(策略者模式)
    设计模式系列一创建型模式之(简单工厂VS工厂方法)
  • 原文地址:https://www.cnblogs.com/top5/p/1841539.html
Copyright © 2020-2023  润新知