检查点击元素的ID

时间:2016-12-14 21:36:48

标签: javascript jquery

我有几个具有相同类的图像,并且想要设置一个单击功能,根据单击的图像更改某些元素中的文本。 我的if语句不起作用,我不完全确定为什么,因为我之前使用过这种方法,或者我认为是这样。

$('.gallery_image').click(function(e) {
    var t = $(this);
    if(t.id == 'csf') {
        console.log('It works!');
    }
});

JSFIDDLE

2 个答案:

答案 0 :(得分:6)

使用t.attr('id')代替t.id

More about .attr()

答案 1 :(得分:0)

另一种解决方案是使用类而不是id。调用它们共享的类上的click函数,然后使用第二个类将它们与hasClass函数区分开来:

 <div id="csf" class="gallery_image csf">csf</div>
<div id="csi" class="gallery_image csi">csi</div>

    $('.gallery_image').click(function(e) {
    var t = $(this);
    if(t.hasClass('csf')) {
        alert("It works!");
    }

     else if(t.hasClass('csi')) {
        alert("So does this!");
    }
});