用类检测点击图像

时间:2016-01-30 16:03:19

标签: javascript jquery html

我有一个jquery脚本,它试图检查用户是否点击了某个类的图像。有问题的图像如下所示:

<img src='media/voteup.png' class='upvote selected' />

我的脚本尝试使用以下代码绑定到此图片上的点击:

$(document).ready(function(){
    $(".upvote").click(function(){
        console.log("clicked");
        if ($(this).hasClass("selected")){
            // does stuff
        } else{
            // does stuff
        }
    });
});

然而,我没有收到控制台消息。我试过绑定:

$(".upvote").on("click", ".upvote", function(){...});

但它没有奏效。我想知道我做错了什么。

提前致谢!

编辑:

事实证明问题的根源是我真的愚蠢地试图用jref而不是src链接js文件。我需要更多的睡眠:P

3 个答案:

答案 0 :(得分:2)

尝试使用事件委派on(),例如:

$("body").on("click", ".upvote", function(){
    console.log("clicked");

    if ($(this).hasClass("selected")){
          // does stuff
    } else{
          // does stuff
    }
});

$(document).ready(function(){
  $(".upvote").click(function(){
    alert("clicked");
    if ($(this).hasClass("selected")){
      // does stuff
    } else{
      // does stuff
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img src='media/voteup.png' class='upvote selected' />

答案 1 :(得分:1)

var e; 
e=$(".upvote");
e.click=function()

{
    console.log("clicked");
    if (e.ClassName=="selected"){
      // does stuff
    } else{
      // does stuff
}

}

答案 2 :(得分:0)

试试这个

$("document").on("click", ".upvote", function(){...});