选中复选框后,我一直在使用以下代码更新div样式:
$(document).ready(function() {
var checkbox = $('input[type="checkbox"]');
var checkimage = $('<div class="checkbox-image" />');
$(checkbox).each( function() {
$(this).show().before( checkimage );
});
$(checkbox).prop('checked', function() {
$('.checkbox-image').addClass('checked');
});
$('checkbox-image').on('click',function() {
$(this).toggleClass('checked').after().prop('checked',$(this).is('.checked'));
});
});
工作正常,然后停止工作,我无法理解为什么?有人可以帮忙吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
jQuery库未包含在小提琴中 - (在LHS面板中,第一个下拉列表选择jQuery版本)
您的checkbox-image
选择器错误,因为它错过了前面的.
。
此外,代码可以简化为
$(document).ready(function() {
var checkbox = $('input[type="checkbox"]');
var checkimage = $('.checkbox-image');
checkimage.click(function(){
$(this).toggleClass('checked').next().prop('checked',$(this).is('.checked'));
});
checkbox.change(function(){
checkimage.toggleClass('checked', this.checked)
}).change();
});
演示:Fiddle