如果其他条件不适用于第二次点击

时间:2012-09-28 17:45:25

标签: jquery conditional if-statement conditional-statements

Jquery其他条件不起作用。当我第一次点击#webul li时背景位置变为0 144但是当我再次点击时没有任何反应。

$('.design-button').click(function() {
    $('#webul li ').not('.design').toggle(500)
    if($('.design-button').css("background-position", "0 0px")){
        $('.design-button').css("background-position", "0 144px")
    }
    else {
        $(".design-button").css("background-position", "0 0px")
    }
});

2 个答案:

答案 0 :(得分:1)

if($('.design-button').css("background-position", "0 0px")){

总是 true ..你没有在这里检查一个值,你正在分配它并使该语句始终为真。进行此更改

if($('.design-button').css("background-position") == "0 0px")){

答案 1 :(得分:0)

如果不将px添加到属性,您还会注意到它失败。这应该工作。但是,根据预期的功能,您可以考虑将内部标识符更改为$(this)而不是$('。design-button')

$('.design-button').click(function() {   
     $('#webul li ').not('.design').toggle(500);

    if($('.design-button').css("background-position") == "0px 0px"){         
        $('.design-button').css("background-position", "144px"); 
     } 
    else { 
         $('.design-button').css("background-position", "0px 0px");
    } 
}); 

http://jsfiddle.net/kJ7Ew/3/