2011-06-28 77 views

回答

9

說得對 - AlphaImageLoader過濾器已從IE9中刪除。 這樣做是爲了使它不符合符合標準的方法。在這種情況下, pointer-events: none,其中 now works in IE9

如果您使用條件註釋將目標IE定位到過濾器修復程序,請將它們更改爲僅定位到IE8及更低版本。嘗試改變 <!--[if IE]><!--[if lte IE 8]>

編輯:我因爲一次遇到這一點,似乎pointer-events: none不IE9工作(不是HTML元素反正)。我認爲這是行得通的,但重新測試這兩種方法都不適用於IE9上的點擊。也許我有我的IE9在兼容模式。

這是不理想的,但是你可以通過<meta>標籤開關強制IE9到IE8模式:

<!--[if ie 9]><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"><![endif]--> 

道歉誤傳,我將繼續尋找到這一點。

更新2012年9月24日:

pointer-events對HTML的奇妙有用caniuse.com有更多的信息。在IE10中的支持還不得而知,Opera似乎也不支持這個屬性。我建議現在不要使用pointer-events,除非你專門針對Webkit/Mozilla。

+3

這項工作?我似乎無法讓它在IE9中工作。這些文檔講述了SVG的一些內容,但是它不清楚它是否適用於其他元素。我有.wrapper {pointer-events:none;} .wrapper * {pointer-events:all;}和所有樣式在開發人員工具欄中進行追蹤。 – ablemike

+0

Upvoters - 請看我編輯的答案。 –

1

指針事件僅適用於webkit,html中的mozilla瀏覽器。

但是,指針事件適用於Internet Explorer中的svg元素。

有一個很好的Modernizr的插件https://github.com/ausi/Feature-detection-technique-for-pointer-events/blob/master/modernizr-pointerevents.min.js測試的指針事件的存在

如果您使用的是指針的事件,只是添加某種紋理潔癖的你可以用SVG元素

替換一個div
if(!Modernizr.pointerevents) 
{ 
    $('#texture').replaceWith('<svg id="texture"/>'); 
} 
相關問題