午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    跨平臺(格式化)event
    來源:易賢網(wǎng) 閱讀:930 次 日期:2014-08-15 17:22:48
    溫馨提示:易賢網(wǎng)小編為您整理了“跨平臺(格式化)event”,方便廣大網(wǎng)友查閱!

    在前面一篇文章寫了javascript事件對象,Dom和IE的對象在不同瀏覽器下是不同的,如果要跨平臺使用則要格式化event或者是叫補充不同的屬性和方法.為了更簡單些,直接講window IE下的屬性或者方法進行調(diào)整,使其擁有Dom的方法或屬性.IE下沒有Dom的一些方法或者屬性,則通過IE的方法或者屬性來轉換或者定義為Dom的屬性

    直接上代碼,在代碼中解釋

    <script language="javascript">

    var foraspcn = new Object;//這個不用解釋了,上一篇溫江對這個已經(jīng)詳細說明了.

    foraspcn.format_event = function(oEvent)//這里的oEvent 是傳過來的window的屬性event,或者是Dom的唯一函數(shù)<網(wǎng)站制作學習網(wǎng)>

    {

    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事件發(fā)生時包含到keyCode屬性中,如果要創(chuàng)建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(不包含滾動條),再加上滾動條的位移<網(wǎng)站制作學習網(wǎng)>

    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;

    }

    //調(diào)用格式化event//<網(wǎng)站制作學習網(wǎng)>

    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則調(diào)用調(diào)用函數(shù)的第一個參數(shù)即Dom的event

    }

    }

    </script>

    學習中........

    更多信息請查看IT技術專欄

    更多信息請查看腳本欄目
    易賢網(wǎng)手機網(wǎng)站地址:跨平臺(格式化)event

    2025國考·省考課程試聽報名

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)