JQuery:点击类反应

JQuery: Click Class Reaction

本文关键字:JQuery      更新时间:2023-09-26
$(document).ready(function() {
// ............. Your jQuery Code goes here .............
    //var myArray1 = new Array( "img1", "img2" , "img3",  "img4");
    var numImg = $('#thumbNail img').length; //number of images
    var num = 0;
    var curImg = 0;

    //Prevent Image Dragging
    $("img").bind('contextmenu', function(e) {
        return false;
    }); 

    //Prevent Right Click on Mouse
    $("img").bind("mousedown", function(e){
        return false;
    });

    $(".leftThumbNail").live("click", function(){ 
        alert("HY"); 
    });

});

试图让它在我点击类"left缩略图"中的图像时做出反应。此类在左侧面板上包含 2 个图像。每当我单击该类中的任何图像时,似乎什么都没有发生。

我也试过:

$(".leftThumbNail").click(function() {
        alert("HEY");
    });

在我的"左拇指甲"课上,我有以下内容:

<div class="leftThumbNail">   
<img id = "img1" src="img/thumb/image1.jpg" class = "image1Position" alt="Image 1">
<img id = "img2" src="img/thumb/image2.jpg" class = "image2Position" alt="Image 2" >
</div>
好的试试

这个:

$('img').on({
    contextmenu:function(e) {
        e.preventDefault();
    },
    click:function(e){
        if(e.which === 3){
            e.preventDefault();
        }
    },
    dragstart:function(e){
        e.preventDefault();
    }
}); 
$(".leftThumbNail").on('click', function(){ 
    alert('HY'); 
});

这将执行以下操作:

  • 通过选中特定于右键单击e.which来终止右键单击
  • 更新.on() ,您想要执行的操作的现代版本
  • 将用于'img'的处理程序合并到单个.on()声明中

为了进一步巩固它:

$('img').on({
    contextmenu:function(e) {
        e.preventDefault();
    },
    click:function(e){
        if(e.which === 3){
            e.preventDefault();
        } else if($(this).hasClass('leftThumbNail')){
            alert('HY');
        }
    },
    dragstart:function(e){
        e.preventDefault();
    }
}); 

没有更多的额外处理程序...现在全部处理在一起!

编辑 修改为包括预防拖动(通过使用处理程序执行dragstart)。还return false改为更合适的e.preventDefault()以允许冒泡。