Javascript-onclick函数更改布尔值并更改attr可见性

时间:2018-08-03 20:39:54

标签: javascript jquery onclick conditional

因此,我正在学习Javascript,并且在更改元素的可见性属性时是否对使用布尔变量更改全局变量存有疑问。

代码是这样的:

var lastView=false;

$("#idShipmentActionsCombo-icon").on('click', function(){

if (lastview=false){

$('#idShipmentActionsCombo-lb').attr('style', 'visibility: visible');
    lastView=true;

}

else if(lastView=true){

$('#idShipmentActionsCombo-lb').attr('style', 'visibility: hidden');
    lastView===false;

    }
}

所以#idShipmentActionsCombo-icon是我单击的元素,#idShipmentActionsCombo-lb就是我要根据lastView的值显示和隐藏的内容。

先谢谢了,我对我的英语不是我的主要语言深表歉意。

3 个答案:

答案 0 :(得分:1)

由于使用jQuery,因此请使用.toggle()方法而不是布尔值,条件和样式。

$("#idShipmentActionsCombo-icon").on('click', function(){ 
   $('#idShipmentActionsCombo-lb').toggle();
})

答案 1 :(得分:0)

您好像在);的最后缺少结尾处的.on(,此外,在某些情况下,“ ===”和“ =”混淆并且大写是不正确的。看到这个:http://jsfiddle.net/215sxj90/3/

答案 2 :(得分:0)

我认为您将分配与逻辑运算符混淆了。 以下是作业:

lastView = true;

,以下是逻辑运算符-比较:

lastView === true

后者应在您的条件语句中使用-ifelse if等:

var lastView = false;

$("#idShipmentActionsCombo-icon").on('click', function () {

    if (lastview === false) {

        $('#idShipmentActionsCombo-lb').attr('style', 'visibility: visible');
        lastView = true;

    }
    else if (lastView === true) {
        $('#idShipmentActionsCombo-lb').attr('style', 'visibility: hidden');
        lastView = false;

    }
}