因此,我認爲這是我做了明顯錯誤的事情。它太慢了,即一定有一些根本性的錯誤。爲什麼我的上下文選擇器和.buttonset()花了這麼長時間在ie
樂HTML
<div id='mother'>
<div id="radio">
<input type="radio" id="radio1" name="radio" />
<label for="radio1">Choice 1</label>
<input type="radio" id="radio2" name="radio" checked="checked" />
<label for="radio2">Choice 2</label>
</div>
<div id="radioTwa">
<input type="radio" id="radioTwa1" name="radioTwa" />
<label for="radioTwa1">Choice 1</label>
<input type="radio" id="radioTwa2" name="radioTwa" checked="checked" />
<label for="radioTwa2">Choice 2</label>
</div>
<div id="check">
<input type="checkbox" id="check1" name="check" />
<label for="check1">Choice 1</label>
<input type="checkbox" id="check2" name="check" checked="checked" />
<label for="check2">Choice 2</label>
</div>
</div>
樂的JQuery/JQuery的UI
var mother = $('#mother');
mother.find('#radio').buttonset();
mother.find('#radioTwa').buttonset();
mother.find('#check').buttonset();
或
var mother = $('#mother');
$('#radio', mother).buttonset();
$('#radioTwa', mother).buttonset();
$('#check', mother).buttonset();
這兩項將帶來IE 8到它的膝蓋並使其哭泣。爲了扼殺一些事情,我特意使用母親的背景。我沒有每個電臺的唯一ID,我打算使用上下文選擇它們,因爲頁面上的數字「母親」類型div,儘管我使用的每個母親div元素只有8或9個元素它。有沒有辦法在IE 8中選擇使用上下文的速度足以讓它不會停下來?
使用ID選擇器時,不需要上下文或.find()。最快的是總是隻做$('#radio')'。不知道爲什麼buttonset()是如此緩慢,雖然... – Nal
嗯,謝謝Nal,我知道我不必使用上下文選擇器與我提供的示例,但與我正在處理的代碼,這是它是如何設置和改變這將是一項相當大的工作。正如你指出的那樣,.buttonset()是真正導致問題的原因。 – MrBrightside
你有多少個按鈕?似乎有一些關於stackoverlow上的緩慢按鈕集的compliants。我還發現http://bugs.jqueryui.com/ticket/5454 – Nal