2011-11-22 53 views
0

我有下面的代碼行中我的程序:是否:過濾舊版IE的工作?

$('input').filter(':radio').change(function() { 

的問題是,一些使用Internet Explorer的人都表示,它不發射(或者說是它裏面的程序無法正常工作)。 我知道JavaScript是爲他們的瀏覽器打開的,因爲其他的東西都在工作。

IE和上面提到的代碼是否存在已知的兼容性問題? 我有IE9,它爲我工作。 我正在從Google的CDN載入最新版本的jQuery。

+1

在什麼版本的IE是什麼呢? – Galled

+0

它必須。這就是jQuery對跨瀏覽器兼容性的自豪感。如果你有最新版本,那麼確定它確實工作。也許你的訪問者沒有啓用JavaScript? – Shef

+1

你什麼時候期待.change()開火?它看起來像一些版本的IE瀏覽器只會在無線電失去焦點時觸發它。這可能是你的問題:http://stackoverflow.com/questions/1498987/ie-html-radio-change-event或這個:http://norman.walsh.name/2009/03/24/jQueryIE。 – jfriend00

回答

0

沒有聽說過任何與它的已知問題,但你總是寫不使用過濾器:

$('input:radio').change(function() { 
    // your code 
}); 
+1

不應該改變這個問題,但這是一個更清潔和更好的方式來做到這一點! :) – Sander

+0

嗯。文檔中說:「因爲radio是jQuery擴展,而不是CSS規範的一部分,所以使用radio的查詢無法利用本地DOM querySelectorAll()方法提供的性能提升。爲了在現代瀏覽器中獲得更好的性能,請使用[type =「收音機」]代替。「 –

+0

我試試$('input [type =「radio」]')。click(function() –