我在用戶單擊按鈕後顯示的div中有一組單選按鈕。第一個jquery點擊事件在ie8中沒有正確觸發
<div id="quiz_take" class="media_layout quiz_panel hide">
<div class="quiz_panel_layout">
<p><b>Quiz4 Title</b></p>
<ol>
<li>
<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit?</div>
<div class="ans">
<input type="radio" name="..." id="0-0" value="0" />
<label>wrong</label>
</div>
<div class="ans">
<input type="radio" name="..." id="0-1" value="1" />
<label>right</label>
</div>
<div class="ans">
<input type="radio" name="..." id="0-2" value="2" />
<label>wrong</label>
</div>
</li>
<li>
<div>Cras luctus ante a sem gravida rutrum?</div>
<div class="ans">
<input type="radio" name="..." id="1-0" value="0" />
<label>right</label>
</div>
<div class="ans">
<input type="radio" name="..." id="1-1" value="1" />
<label>wrong</label>
</div>
<div class="ans">
<input type="radio" name="..." id="1-2" value="2" />
<label>wrong</label>
</div>
</li>
<li>
<div>Fusce vulputate porta sem, ut bibendum urna lacinia in?</div>
<div class="ans">
<input type="radio" name="..." id="2-0" value="0" />
<label>wrong</label>
</div>
<div class="ans">
<input type="radio" name="..." id="2-1" value="1" />
<label>wrong</label>
</div>
<div class="ans">
<input type="radio" name="..." id="2-2" value="2" />
<label>right</label>
</div>
</li>
</ol>
<div class="fit">
<span id="submit_quiz" class="media_layout disabled-quiz-button button">Submit</span>
</div>
</div>
</div>
在IE8(qa機器是XP環境)除外,每個瀏覽器都可以正常工作。它甚至可以在IE7中很好地運行。
// can only submit if every radio group has selected
$('div.ans input:radio').live('click', function() {
...
});
這是它上面的按鈕單擊事件,顯示了測驗的div:
// start quiz
$('#start_quiz').click(function() {
if ($(this).hasClass('quiz-take-button')) {
$('#quiz_ready').hide();
$('#quiz_result').hide();
$('div.ans input:radio').attr('checked', false);
$('#quiz_take').show();
}
});
單選按鈕事件本來是一個jQuery的。點擊
本次活動由處理事件。但我一直在嘗試許多不同的方法來查看故障排除。在第一次單擊時,IE8不能識別它,並且沒有選擇該按鈕,這是任何按鈕的情況。但隨後的每次點擊確實有效。這就像其中一個父元素攔截第一次點擊。在第一次單擊事件之後,css樣式(填充和其他空格)也不能正確顯示。
有什麼想法?
這最終導致隱藏#quiz_ready div直接在它之上,無論出於什麼原因我都不知道。我將show()改成了快速動畫節目(10),現在它工作的很好。 –