使用JQuery编辑特定DOM元素的数据属性

时间:2013-09-20 03:09:31

标签: javascript jquery html dom

我输入了警报,因为当我检查元素时没有显示更改。但是,当我第一次点击该对象时,它会显示“数据现在为假”警报,就好像我已经点击过一次。

HTML:

<li class="media-thumb" data-select="false"><img src="IMG HERE"></li>

使用Javascript:

 $(document).ready(function() {


    $(".media-thumb").click(function() {
        if($(this).data("select") === "false") 
            {
                alert("data is now true")
                $(this).data("select", "true");


            }
        else
            {
                alert("data is now false")
                $(this).data("select", "false");

            }
    });

});

1 个答案:

答案 0 :(得分:3)

data-select属性作为布尔false返回(根据jQuery docs:“每次尝试将字符串转换为JavaScript值”),而不是字符串。< / p>

所以你实际上可以写:

$(".media-thumb").click(function() {
    if(! $(this).data("select")) 
        {
            alert("data is now true")
            $(this).data("select", true);
        }
    else
        {
            alert("data is now false")
            $(this).data("select", false);
        }
});

示例CodePen:http://codepen.io/paulroub/pen/Bnvub