pointerEvent 初探

weixin_33924312發表於2018-02-22

這幾天在製作鑫知雜誌發現了兩個問題,第一個問題是訪問公司內部圖片的時候統一出現了403禁止訪問的錯誤,然而只要通過瀏覽器單獨開啟就可以,百思不得其解,後來谷歌了一下,才發現這個是對方伺服器做了圖片防盜鏈,這個防盜鏈是通過reffer來工作,看了下其他的解決,加了meta引數,設定 <meta name="referrer" content="no-referrer" />就行了

另一個問題在使用hammer.js的時候發現的,鑫知雜誌是通過hammer來滑動的,我之前的chrome瀏覽器都可以,今天居然不行了。檢視了下原始碼,發現hammer註冊的滑鼠事件居然是pointer,而chrome瀏覽器在pointermove之後居然直接變成pointercancle了,

var SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;
var SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);
複製程式碼

原始碼中通過檢測PointerEvent in window判定是不是支援pointer,可能chrome支援得還不完善吧,看了下資料,也就是safari支援的比較好,我再看了下其他的瀏覽器,壓根就不支援,索性,

  delete window.PointerEvent

複製程式碼

我把這個屬性在直接刪除,在移動端瀏覽器試了下,這個屬性也是不存在的,這個屬於瀏覽器升級引起的bug吧