互換性のプロセスは、イベントを削除します

<!DOCTYPE HTML > 
< HTML のlang = "EN" > 
< ヘッド> 
  < メタのcharset = "UTF-8" > 
  < タイトル>ドキュメント</ タイトル> 
</ ヘッド> 
< ボディ> 
  < 入力タイプ= "ボタン" = "按钮" ID =" BTN」> 
  < スクリプトSRC = "common.js" > </ スクリプト> 
  <
    私の$(' BTN ' );
    機能btnClick(){ 
      アラート(' こんにちは' );
      // 移除事件
      にremoveEventListener(BTN、' クリック' 、btnClick)。
    } 
    は、addEventListener(BTN、' クリック' 、btnClickを)。
  </ スクリプト> 
</ ボディ> 
</ HTML >
共通コード
機能マイ$(IDを){
   返すのdocument.getElementById(ID); 
} 

// プロセスブラウザの互換性を
// 最初の子を取得
関数getFirstElementChild(要素){
     VARのノード、ノード= element.childNodesを、I = 0 ;
     一方(ノード=ノード[I ++ ]){
         IF(node.nodeType === 1 ){
             戻りノード; 
        } 
    } 
    戻り NULL ; 
} 

// プロセスブラウザ互換
// 次の兄弟を取得
 関数getNextElementSibling(素子){
     VAR EL =要素;
     一方(EL = el.nextSibling){
       IF(el.nodeType === 1 ){
           戻りEL; 
      } 
    } 
    戻り NULL ; 
  } 


// 互換性の問題ののinnerTextのTextContent処理
// タグセットとの間のコンテンツ
機能setInnerText(要素コンテンツ){
   //は現在のブラウザはのinnerTextサポートするかどうかを決定する
  のiFをtypeof演算 element.innerText === '文字列' ){ 
    element.innerText = コンテンツ; 
  } そうでなければ{ 
    element.textContent = コンテンツ; 
  } 
}

 // 互換性の問題は、登録されたイベントに対応
// ONせずeventNameの、クリックマウスオーバーマウスアウトの
関数のaddEventListener(要素、eventNameの、FN){
   // 現在のブラウザは、addEventListenerメソッドをサポートするかどうかを決定する
  IF (element.addEventListener){ 
    要素。 addEventListener(eventNameの、FN);   // falseに第3のパラメータのデフォルト値 
  }  IF (element.attachEvent){ 
    element.attachEvent( + 'ON' eventNameの、FN); 
  } そうでは{
     //はelement.onclick = FN対応します; 
    元素〔eventNameの+ 'ON'] = のFn; 
  } 
} 

// 除去互換処理イベント
機能removeEventListener(要素、eventNameの、FN){
   IF (element.removeEventListener){ 
    element.removeEventListener(eventNameの、FN); 
  } そう IF (element.detachEvent){ 
    (element.detachEvent + 'ON' eventNameの、FN); 
  } { 
    [要素 eventNameの+ 'ON'] = NULL ; 
  } 
} 

// ブラウザの互換性の問題ページのスクロール距離取得
//がページスクロールから取得
機能getScrollを(){
   VAR scrollLeft = || document.body.scrollLeft 文献。 documentElement.scrollLeft;
   VAR= || document.body.scrollTop scrollTopスプライトdocument.documentElement.scrollTop;
   リターン{ 
    scrollLeft:scrollLeft、
    scrollTopスプライト:scrollTopスプライト
  } 
} 

// ページ上のマウスの位置を取得し、ブラウザの互換性処理
機能GETPAGE(E){
   VAR pageX e.clientX || + = e.pageX getScroll ().scrollLeft;
   VAR pageY e.clientY || + = e.pageY getScroll()scrollTopスプライト;.
   戻り{ 
    pageX:pageX、
    pageY:pageY 
  } 
}

 

おすすめ

転載: www.cnblogs.com/jiumen/p/11413583.html