簡體   English   中英

Javascript div類檢查onclick

[英]Javascript div class check onclick

我正在嘗試檢查onclick是否div將兩個不同的類之一添加到主div類中,如果沒有,請返回警報。 這是所有可能的div的示例:

<div class="mainclass class1"></div>
<div class="mainclass class2"></div>
<div class="mainclass"></div>

如果我嘗試使用JS這樣的類來檢查類是否存在,

$('.mainclass').click(function () {
    var check1 = $(this).hasClass('class1');
    var check2 = $(this).hasClass('class2');
    if(check1 == false || check2 == false)
                { 
                    alert("Hey, you are clicking empty field!")
                }
});

即使我單擊前兩個div,系統也會始終返回警報。 有什么方法可以使用JS進行適當的檢查嗎?

在選擇要跟蹤的對象時,更容易應用以下限制:

$('.mainclass').not('.class1, .class2').click(function () {
  alert("Hey, you are clicking empty field!")
});

如果確實確實動態添加/刪除了這些類,請再次直接聲明您的意圖:

$('.mainclass').click(function() {
    if ( $(this).is(':not(.class1, .class2)') ) { 
        alert("Hey, you are clicking empty field!");
    }
});

將運算符更改為&&而不是||

$('.mainclass').click(function () {
var check1 = $(this).hasClass('class1');
var check2 = $(this).hasClass('class2');
if(check1 == false && check2 == false)
            { 
                alert("Hey, you are clicking empty field!")
            }
});

工作演示

您在這里需要AND &&運算符,而不是OR ||

if(check1 == false && check2 == false)

小提琴演示

像這樣檢查

$('.mainclass').click(function () {
    var check1 = $(this).hasClass('class1');
    var check2 = $(this).hasClass('class2');
    if(!check1 && !check2 )
                { 
                    alert("Hey, you are clicking empty field!")
                }
});

其他方式

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

    if(!$(this).hasClass('class1') && !$(this).hasClass('class2'))
         { 
            alert("Hey, you are clicking empty field!")
         }
 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM