网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的范文:

 

标题 跨平台(格式化)event
范文
    在前面一篇文章写了javascript事件对象,Dom和IE的对象在不同浏览器下是不同的,如果要跨平台使用则要格式化event或者是叫补充不同的属性和方法.为了更简单些,直接讲window IE下的属性或者方法进行调整,使其拥有Dom的方法或属性.IE下没有Dom的一些方法或者属性,则通过IE的方法或者属性来转换或者定义为Dom的属性
    直接上代码,在代码中解释
    <script language="javascript">
    var foraspcn = new Object;//这个不用解释了,上一篇温江对这个已经详细说明了.
    foraspcn.format_event = function(oEvent)//这里的oEvent 是传过来的window的属性event,或者是Dom的唯一函数<网站制作学习网>
    {
    var sUserAgent = navigator.userAgent;
    var isIE = sUserAgent.indexOf("compatible")>-1 &&sUserAgent.indexOf("MSIE")>-1&&!sUserAgent.indexOf("Opera")>-1;
    var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
    if(isIE && isWin)
    {oEvent.charCode = (oEvent.type == "keypress")?oEvent.keyCode:0;
    //IE中的字符代码是在keypress事件发生时包含到keyCode属性中,如果要创建charCode则直接返回keyCode否则返回0
    oEvent.eventPhase = 2;
    //设置eventPhase 为2始终是冒泡阶段
    oEvent.isChar = (oEvet.charCode > 0);
    //如果判断是不是字符时,IE下判断charCode是否大于0,如果大于则表示是,返回真.反之假
    oEvent.pageX = oEvent.clinetX +document.body.scrollLeft;
    oEvent.pageY = oEvent.clinetY +document.body.scrollTop;
    //Dom中鼠标的位置在ie中获取鼠标的位置clinet(不包含滚动条),再加上滚动条的位移<网站制作学习网>
    oEvent.preventDefault = function(){this.returnvalue = false;}
    //直接定义阻止默认事件为false
    if(oEvent.type == "mouseout")
    {
    oEvent.relatedTaget = oEvent.toElement;
    }else if(oEvent.type == "mouseover")
    {
    oEvent.relatedTarget = oEvent.fromElement;
    }
    //通过不同的事件来定义ralatedTarget,看IE的属性中是不一样的.
    oEvent.stopPropagation = function(){this.cancelBubble = true;}
    //直接设置stopPropagation 为IE中的cancelbubble = true;
    oEvent.target = oEvent.srcElement;
    oEvent.time = (new Date().getTime());
    }
    return oEvent;
    }
    //调用格式化event//<网站制作学习网>
    foraspcn.get_event = function(){
    if(window.event)
    {
    return this.format_event(window.event);//如果是IE则进行格式化window.event
    }
    else
    {
    return foraspcn.format_event.caller.arguments[0];//如果不是IE则调用调用函数的第一个参数即Dom的event
    }
    }
    </script>
    学习中........
随便看

 

在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/23 19:26:26