【问题标题】:How to toggle multiple boolean divs如何切换多个布尔 div
【发布时间】:2014-01-15 09:25:40
【问题描述】:

我有一个图像网格,我想在单击每个图像时切换动画。这个函数对所有的图片都设置了x = true,我怎么要求它只影响被点击的img?

var x = false

$('img').click(function(){                  
if (x == false) {               
$(this).animate({border: '5px'});              
x = true;                             
}  

else {                
$(this).animate({border: '0px'});               
x = false;                        
}     
});

谢谢。 这是上面的小提琴:http://jsfiddle.net/m79fB/

【问题讨论】:

  • 您需要将 true 或 false 与图像标签的某些属性相关联,这对于所有图像都是不同的。您打算在哪里以及如何使用它?
  • 那个 jsfiddle 演示说明了这个问题。当您单击图像时,会切换边框,但是当您单击旁边的图像时,需要单击两次才能打开边框

标签: if-statement jquery-animate boolean toggle var


【解决方案1】:

这里可以使用jquery的addClass、removeClass和hasClass方法来轻松解决问题, CSS:

.add-border {
border:5px solid red;
}

Javascript/jquery:

$('img').click(function() {

var borderClass = $(this).hasClass('add-border') ; // returns true or false 

if(!borderClass)
$(this).addClass('add-border');
else
$(this).removeClass('add-border');


});

这是小提琴http://jsfiddle.net/hearsid/489hW/

【讨论】:

    猜你喜欢
    • 2012-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 2023-02-06
    • 1970-01-01
    • 1970-01-01
    • 2021-09-02
    相关资源
    最近更新 更多