首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >让div忽略除单击以外的所有内容

让div忽略除单击以外的所有内容
EN

Stack Overflow用户
提问于 2013-06-27 21:07:38
回答 3查看 167关注 0票数 1

我有一张地图,上面有大约3-5个div。当有人单击div时,它会翻转,并在div的背面显示一个文本。但如果有人将光标放在div上并滚动,地图应该会像往常一样进行缩放。

我在另一个问题中发现了这个:http://jsfiddle.net/ZqfTX/。有没有办法说

dblclick: function(){$(this).[IGNORE]}

我的想法只是一个想法。如果你有其他方法,那就更好了。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-06-27 21:26:35

这应该能满足你的需求。这是一个更新的,它设置超时并防止双击发生。在允许第二次单击之前,您可以设置所需的时间。它还检测鼠标滚轮的滚动,并根据滚动的方向向上或向下发出警报。

从你的操作和评论来看,我相信这应该能实现你所要求的一切。至于你的div的动画,我不知道你在用它做什么,所以需要改变这个部分来做你想做的事情。

下面的代码片段是从另一篇文章中找到并修改的,非常感谢该帖子:

防止双击

代码语言:javascript
复制
jQuery('.flip').click(function() { 
    var $this = jQuery(this);
    if ($this.data('activated')) return false;  // Pending, return

    $this.data('activated', true);
    setTimeout(function() {
        $this.data('activated', false)
    }, 1500); // Time to wait until next click can occur

    doFlip(); // Call whatever function you want
    return false; 
});

function doFlip() {
    if ($('.flip').find('.card').hasClass('flipped')) {
        $('.flip').find('.card').removeClass('flipped');
    } else {
        $('.flip').find('.card').addClass('flipped');
    }
}

另外,如果您不希望用户能够再次单击div,请查看jQuery的事件处理程序附件,因为它只允许每个元素执行一次。不确定你是否想要第二次点击它的能力,但我想我会把它扔在那里以防万一。

票数 1
EN

Stack Overflow用户

发布于 2013-06-27 22:01:34

如果你想防止双击,你可以尝试使用event.preventDefault

代码语言:javascript
复制
    $(".yourClass").dblclick(function (e) {
         e.preventDefault();
    });
票数 0
EN

Stack Overflow用户

发布于 2013-06-27 23:47:52

看起来您必须为要传递到地图的事件绑定事件处理程序,并手动执行缩放操作。这可能会有帮助:https://code.google.com/p/jquery-ui-map/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17344027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档