我有以下代码在 Chrome 和 Firefox 中运行良好,但不适用于 IE8,或者我假设低于 8 的版本。
<script type="text/javascript">
$(function() {
$('div.hidden').hide();
$('input.show:checked').each(function() {
$('#' + $(this).val()).show();
});
$('input.show').click(function() {
$('div.hidden').hide();
$('#' + $(this).val()).show();
});
});
</script>
一开始我以为可能是:checked
选择器的原因,所以我把代码改成如下:
<script type="text/javascript">
$(function() {
$('div.hidden').hide();
$('input.checked').each(function() {
$('#' + $(this).val()).show();
});
$('input.show').click(function() {
$('div.hidden').hide();
$('#' + $(this).val()).show();
});
$("input[type='checkbox']").click(function() {
$(this).parent().toggleClass("checked", this.checked);
});
});
</script>
没有运气,所以我尝试使用 IE9.js 和 IE8.js,都没有效果。在那之后,我又开始玩弄选择器并尝试交换这个:
$('input.checked').each(function() {
有了这个:
$('input[checked="checked"]').each(function() {
再一次,我空手而归,所以现在我开始认为它可能不是选择器。我在这里搜索过,当然还有谷歌,但没有找到任何东西。谁能告诉我为什么我的代码不能在 IE8 中运行?这里也是一个 JSFiddle:http: //jsfiddle.net/DrydenLong/bP4Uf/
谢谢!