我有一个应用程序显示各种图像,每个图像都有一个唯一的_id
,但它们都共享类名:uploadedImage
。右键单击图像后,我希望事件将图像unqiue _id
添加到clickedImage
数组中。
在下面的代码中找到以上描述:
'contextmenu .uploadedImage': function(){
var clickedImage = [];
$('.uploadedImage: onclick').forEach(function(index ){
clickedImage.push(this._id);
console.log(,...clickedImage);
});
当我运行此代码时,我收到以下错误消息:
Uncaught Error: Syntax error, unrecognized expression: .uploadedImage: onclick
在下面找到我的图像类架构:
<div class="col-md-2 col-sm-3 col-xs-4 uploadedImage">
<div class="well">
</div>
</div>
那么,如何让JavaScript按类名正确识别单击(右键单击)元素?
提前致谢!
答案 0 :(得分:2)
$('.uploadedImage').on('click', function(e){
// check if it was a rightclick with this if
if ((e.which && e.which == 3) || (e.button && e.button == 2)) {
clickedImage.push($(this).attr('_id'));
console.log(clickedImage);
}
});
如果你使用一个类作为选择器,它适用于已经分配了这个类的每个元素,并且点击监听器不能在选择器中;)