簡體   English   中英

定位點擊的元素

[英]Targeting a clicked element

小提琴

我試圖制作一個在img灰度和正常之間切換的按鈕。 如果單擊了按鈕,我需要找到一種正確定位按鈕的方法。 我嘗試在點擊時添加一個類,然后定位該類。 我也試過了。

$('.switch').on("click", function() {
    if($(this).attr('data-click-state') == 1) {
        $(this).attr('data-click-state', 0)
        $(this).siblings('img').css("-webkit-filter", "grayscale(100%)");
    } else {
        $(this).attr('data-click-state', 1)
        $(this).siblings('img').css("-webkit-filter", "none");
    }
});

為什么按鈕不能在彩色和灰度版本之間切換? 顯然問題不在我的jQuery中,而是在我的html中,因此無法在復選框標簽上使用此jquery嗎?

當您按下按鈕一次時,它將檢測到兩次單擊。 我在if語句外設置了一個警報,每次單擊將獲得兩次警報,所以問題就在於此。

我仍在檢查它,但是現在該問題需要弄清楚它為什么會發生,並且會不斷更新。

更新:是的,先生,這就是我在評論中指出的原因...這是固定的,您可以隨意更改它。

$('#cmn-toggle-1').on("click", function() {
    if($(this).attr('data-click-state') == '1') {
        $(this).attr('data-click-state', '0')
    $(this).parents().siblings('img').css("-webkit-filter", "grayscale(100%)");
    }  
   else {
    $(this).attr('data-click-state', '1')
    $(this).parents().siblings('img').css("-webkit-filter","");
   }
});

新的HTML SNIP:

<div class="switch">
    <input id="cmn-toggle-1" class="cmn-toggle cmn-toggle-yes-no" type="checkbox" data-click-state="1">
    <label for="cmn-toggle-1" data-on="Color" data-off="B&W" data-click-state="1"></label>
</div>

如您所見,您在輸入中添加了data-click-state="1"

暫無
暫無

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

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