簡體   English   中英

如何檢查單擊的元素是否包含具有特定類的元素

[英]How to check if clicked element contains element with certain class

我正在編寫一個 Tampermonkey 腳本,如果單擊某個按鈕,它應該執行一些代碼。

它應該被點擊之前檢查被點擊的按鈕是否包含一個圖標。 我還不知道這是否可能。 有許多獨特的按鈕可以點擊。

這是按鈕:

<a class="btn aao_btn" id="aao_n">
  <span id="available_aao_n" class="label label-danger"><span class="glyphicon glyphicon-remove"></span>
</a>

這是我到目前為止所得到的。 它總是返回 false

$("a.aao_btn").on("click", function (e) {
  if (e.shiftKey) {
    // Execute if Shift is pressed while clicking (working)
  }
  else {
    if ( $(this).find("span").hasClass("label_danger") ) {
        // Execute if clicked button contains a danger icon
      }
    else {
       // No danger. Currently this is always the outcome.
    }
  }
  return false;
});
if ( $(this).find("span.label-danger").length ) {

除了錯別字之外,這不會在元素被點擊之前檢查狀態。 這是我最終的結果:

var danger_check = false;

$("a.aao_btn").mouseover (function() {
    if ( $(this).find("span.label-danger").length ) {
        danger_check = true;
    }
    else {
        danger_check = false;
    }
});


$("a.aao_btn").on("click", function (e) {
  if (e.shiftKey) {
  }
  else {
    if ( danger_check ) {
        // Do this
      }
    else {
       // Do that

    }
  }
  return false;
});

暫無
暫無

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

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