Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何处理主干js中特定目标上的单击事件_Javascript_Jquery_Html_Backbone.js - Fatal编程技术网

Javascript 如何处理主干js中特定目标上的单击事件

Javascript 如何处理主干js中特定目标上的单击事件,javascript,jquery,html,backbone.js,Javascript,Jquery,Html,Backbone.js,html文件 <div class="work"> <ul id="palette" class="palette-pen" style="top:178px;"> <li class="palette-colour-1"><span></span></li> <li class="palette-colour-2"><span></span>&l

html文件

<div class="work">
    <ul id="palette" class="palette-pen" style="top:178px;"> 
        <li class="palette-colour-1"><span></span></li>
        <li class="palette-colour-2"><span></span></li>
        <li class="palette-colour-3"><span></span></li>
        <li class="palette-colour-4"><span></span></li>
        <li class="palette-colour-5"><span></span></li> 
        <li class="palette-colour-6"><span></span></li>
    </ul>
</div>
我想获取我单击的特定
li
的类,但当我第一次单击
li
时,它不会发出警报。当我第二次单击时,它会给出一个带有
div
类(
work
)的警报,而不是我单击的
li

如果我第n次点击
li
li,它会向我发出n-1警报。为什么会发生这种情况?无论是第n次还是第7次单击,它都必须只发出一个警报


因此,请帮助我找到解决方案。

似乎每次单击都会添加一个显示警报的单击侦听器。因此,结果是有意义的。由于“paint”仅在单击时调用,因此只需将您的警报直接放在以下位置:

paint : function(e) {
    alert($(e.currentTarget).attr('class'));
},

你是对的。现在警报只出现一次,但是类名仍然是错误的。啊,我没有看到你想要一个不同的类,我已经更新了,试试看。我总是得到相同的类,那就是高于ul的div类。我想我不确定你到底想要什么。例如,您想让它显示
palete-color-1
?现在使用currentTarget试试
paint : function(e) {
    alert($(e.currentTarget).attr('class'));
},