<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 跨瀏覽器問題

          2018-7-13    seo達人

          如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

          寫在前面的話

          關于跨瀏覽器問題一直是一個大問題, 所以我決定在此做一個記錄, 當然不可能把跨瀏覽器問題一下子都搞定, 所以該文章將是一個長期的過程, 當coding時遇到了, 就會完善該文。

          添加事件

          var EventUtil = { /*
               *添加事件
              */ addHandler: function(element, type, handler) { if(element.addEventListener){ element.addEventListener(type, handler, false)
                  }else if(element.attachEvent){ element.attachEvent('on'+type, handler)
                  }else{ element['on'+type] = handler
                  }
              }, /*
               *刪除事件
              */ removeHandler: function(element, type, handler){ if(element.removeEventListener){ element.removeEventListener(type, handler, false)
                  }else if(element.detachEvent){ element.detachEvent('on'+type, handler)
                  }else { element['on'+type] = null }
              }, /*
               *獲得事件對象
              */ getEvent: function(event){ return event ? event : window.event  //ie瀏覽器的事件對象是window對象的屬性, 所以需要window.event來獲取。 }, /*
               *獲得事件對象的事件目標(觸發事件的事件目標)
              */ getTarget: function(event){ return event.target || event.srcElement //這是||符號的另一種用法, 遇到true就返回。 }, /*
               *阻止默認事件
              */ preventDefault: function(event){ if(event.preventDefault){
                      event.preventDefault
                  }else{
                      event.returnValue = false }
              }, /*
               *阻止事件冒泡
              */ stopPropagation: function(event){ if(event.stopPropagation){
                      event.stopPropagation()
                  }else {
                      event.cancelBubble = true }
              }
          
          }  // stopPropagation()方法既可以阻止事件冒泡,也可以阻止事件捕獲,也可以阻止處于目標階段。
              
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          • 11
          • 12
          • 13
          • 14
          • 15
          • 16
          • 17
          • 18
          • 19
          • 20
          • 21
          • 22
          • 23
          • 24
          • 25
          • 26
          • 27
          • 28
          • 29
          • 30
          • 31
          • 32
          • 33
          • 34
          • 35
          • 36
          • 37
          • 38
          • 39
          • 40
          • 41
          • 42
          • 43
          • 44
          • 45
          • 46
          • 47
          • 48
          • 49
          • 50
          • 51
          • 52
          • 53
          • 54
          • 55
          • 56
          • 57
          • 58
          • 59
          • 60
          • 61

          ajax事件

          關于xhr對象, ie7需要之前的需要使用ActiveXObject對象來實現, 而且存在三個不同的版本。 雖然現在已經不用兼容ie7以前的瀏覽器了, 還是可以了解一下: 
          //適用于IE7之前的版本

          function createXHR(){ if(typeof arguments.callee.activeXString != 'string'){ var versions = ['MSXML2.XMLHttp.6.0', 'MSXML2.XMLHttp.3.0', 'MSXML2.XMLHttp'],
                  i,
                  len; for(i = 0; len = version.length; i++){ try{ new ActiveXObject(veersions[i]); arguments.callee.activeXString = versions[i] break }catch(ex){ //跳過 }
                  }
              } return new ActiveXObject(arguments.callee.activeXString)
          }
              
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          • 11
          • 12
          • 13
          • 14
          • 15
          • 16
          • 17

          //最終版本

          function createXHR(){ if(typeof XMLHttpRequest != 'undefined'){ return new XMLHttpRequest()
              }else if(typeof ActiveXObject != 'undefined'){ if(typeof arguments.callee.activeXString != 'string'){ var versions = ['MSXML2.XMLHttp.6.0', 'MSXML2.XMLHttp.3.0', 'MSXML2.XMLHttp'],
                  i,
                  len; for(i = 0; len = version.length; i++){ try{ new ActiveXObject(veersions[i]); arguments.callee.activeXString = versions[i] break }catch(ex){ //跳過 }
                  }
              } return new ActiveXObject(arguments.callee.activeXString)
              }else { throw new Error("NO XHR object availabel")
              }
          }
          藍藍設計www.sdgs6788.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.sdgs6788.com

          存檔

          伊人伊成久久人综合网777| 精品免费久久久久国产一区| 国内精品久久国产| 2021久久精品国产99国产精品| 国内精品久久久久| 亚洲欧美成人久久综合中文网 | 99久久免费国产特黄| 国内精品免费久久影院| 伊人久久大香线蕉综合Av| 国产精品久久波多野结衣| 久久这里都是精品| 欧美激情精品久久久久| 国产精品久久婷婷六月丁香| 99久久久国产精品免费无卡顿| 久久精品国产精品亚洲艾草网美妙| 久久夜色精品国产噜噜噜亚洲AV| 久久精品国产亚洲精品| 国内精品伊人久久久久| 久久久久久久97| 亚洲精品乱码久久久久久蜜桃图片 | 久久久黄片| 国产综合久久久久| 2021国产精品久久精品| 久久影院亚洲一区| 久久久久国产| 久久成人永久免费播放| 99久久夜色精品国产网站| 国产精品久久国产精麻豆99网站| 国产精品久久久久久久app| 久久免费香蕉视频| 久久久久久国产精品美女| 精品久久久久久国产免费了| 九九99精品久久久久久| 国产成年无码久久久久毛片| 久久综合狠狠综合久久综合88| 香蕉久久夜色精品升级完成| 免费精品国产日韩热久久| 久久综合伊人77777| 尹人香蕉久久99天天拍| 亚洲综合熟女久久久30p| 久久久精品2019免费观看|