jquery的mCustomScrollbar滾動條建立在ie8下報frameElement的相關錯

在ie8下若是一個頁面嵌套一個包含mCustomScrollbar滾動條javascript

那麼若是推進滾動條就會報java

沒法獲取未定義或 null 引用的屬性「frameElement」code

的錯誤 。對象

搜索一下代碼ip

var o=t.type,a=t.target.ownerDocument!==document?[e(frameElement).offset().top,e(frameElement).offset().left]:null,n=W()&&t.target.ownerDocument!==top.document?[e(t.view.frameElement).offset().top,e(t.view.frameElement).offset().left]:[0,0];

修改行爲get

var myView = t.view||window;var o=t.type,a=t.target.ownerDocument!==document?[e(frameElement).offset().top,e(frameElement).offset().left]:null,n=W()&&t.target.ownerDocument!==top.document?[e(myView.frameElement).offset().top,e(myView.frameElement).offset().left]:[0,0];

問題就解決了iframe

問題主要是處在event

t.view.frameElement

做者的意圖很明顯就是想要找到引用頁面的iframe元素,因此做者試圖經過event的view屬性獲取當前的頁面對象,class

可是很惋惜IE8 event的view屬性是undefined,因此程序出錯。搜索

既然做者只是爲了找到當前的window,那麼代碼徹底能夠改成

var myView = t.view||window;

意思很明顯就是有view就用view沒有就用window。

問題就這樣解決了。

相關文章
相關標籤/搜索