在我的jquery中,我有以下代码,由于某种原因,它没有像我预期的那样工作。在测试代码时不执行css更改。如果我删除:已选中并且只有$(“输入”),则css可以工作,但只能点击输入:复选框
$("input :checked").toggle(function() {
// Stuff to do every *odd* time the element is clicked;
$(this).siblings('a').css("text-decoration","line-through");
$(this).siblings('a').css("color","#aaa");
$(this).parent('li').css("background-color","#ccc");
}, function() {
// Stuff to do every *even* time the element is clicked;
$(this).siblings('a').css("text-decoration","none");
$(this).siblings('a').css("color","");
$(this).parent('li').css("background-color","");
});
我错过了什么?
答案 0 :(得分:3)
试试这个:
$('input:checkbox').click(function() {
if($(this).is(':checked')) {
// Stuff to do every *odd* time the element is clicked;
$(this).siblings('a').css("text-decoration","line-through");
$(this).siblings('a').css("color","#aaa");
$(this).parent('li').css("background-color","#ccc");
}
else {
// Stuff to do every *even* time the element is clicked;
$(this).siblings('a').css("text-decoration","none");
$(this).siblings('a').css("color","");
$(this).parent('li').css("background-color","");
}
});
这是一个jsfiddle:http://jsfiddle.net/AwMf3/
答案 1 :(得分:0)
输入元素不能有后代。也许你的意思是input:checked
(没有空格)?