- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对框 dblclick 功能有问题,当我点击带有框类的 div 时,它没有传递页面 dblclick,它执行页面点击功能
我的问题是如何让双击带有box类的div忽略页面功能的双击功能?
这是我的 html 代码:
<html>
<head>
<link type="text/css" rel="stylesheet" href="css/organizer.css">
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="js/organizer.js"></script>
</head>
<body>
<div id="page">
</div>
</body>
</html>
这是js代码:
var tempX=0;
var tempY=0;
$(document).ready(function()
{
$('.box').dblclick(function()
{
box2();
});
$('#page').dblclick(function()
{
tempX=0;
tempY=0;
box();
});
});
function box()
{
tempX = event.pageX-110;
tempY = event.pageY-60;
$('<div></div>').addClass('box').css({top:tempY,left:tempX}).appendTo($('#page'));
}
function box2()
{
tempX = event.pageX-400;
tempY = event.pageY-180;
$('<div></div>').addClass('box2').css({top:tempY,left:tempX}).appendTo($('#page'));
}
这是CSS代码:
#page
{
position:relative;
background-color:yellow;
top:0px;
left:0px;
width:100%;
height:100%;
}
.box
{
position:absolute;
background-color:red;
display:inline-block;
width:200px;
height:100px;
margin:5px;
z-index:10;
}
.box2
{
position:absolute;
background-color:blue;
display:inline-block;
width:400px;
height:200px;
margin:5px;
z-index:10;
}
最佳答案
当您点击 .box 时,它本身位于 #page 中,事件“冒泡”,这意味着 #page 事件将被触发。为避免这种情况,请使用 event.stopPropagation()
。
此外,您将操作绑定(bind)到尚不存在的元素,因此除非您使用事件委托(delegate),否则它们将无法工作:
$(document).on('dblclick','.box',function(){...});
JS
$(document).on('dblclick','.box',function(event)
{
event.stopPropagation();
box2();
});
$(document).on('dblclick','#page',function()
{
tempX=0;
tempY=0;
box();
});
此外,要让您的#page可见,请将其位置设置为absolute。
关于javascript - 为什么 box dblclick 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24343219/
我有一个很大的 jquery 代码.. 事情是,我想创建一个在线横幅编辑器。 我在两个 div 内添加了两个文本。这个div是可拖动的。这些 div 又位于另外两个可调整大小的 div 下 现在我想做
我是 Javascript 新手,我开发了以下代码,该代码只能运行一次。 function display(arr) { $(".tbl tbody").empty(); for (i = 0
让 dblclick 在触摸设备和 PC 浏览器上工作的最佳方式是什么 下面的代码在鼠标双击时工作得很好,但在 android 触摸设备上尝试时,不起作用。我应该怎么做?对此很陌生 $(documen
我这里有一些代码 http://jsfiddle.net/ggHwH/每次按下 UP 按钮时,框边框都会增加 1px,每次按下 DOWN 按钮时,框边框会减少 1px。现在我想感应双击向下按钮并立即将
我有一个功能,可以在双击时克隆 img。但是,如果我单击原始 img 上完全相同的位置,则不会在第一个之后生成克隆。我必须将光标移动一小段距离,甚至 1px。 这个问题出现在我正在进行的几个 jque
目前我的应用程序使用 FancyTree jquery 插件,dblclick 事件不仅仅适用于苹果设备,当在 iphone7/8 上设置的 google chrome 开发者模式下运行时,它在控制台
我这里有一个 jsfiddle - http://jsfiddle.net/stevea/eF5cp/5/ - 带有可调整大小的盒子。如果双击文档中的任意位置,框颜色将在米色和红色之间切换。 问题是,
过去几个月,我尝试开发一些运行 JS、jQuery 和 PHP 的 Web 应用程序,以及我在这里找到的大多数技巧(谢谢)以及我使用 Chrome 测试的所有脚本。怎么说呢,它一直有效,直到我决定更改
嘿伙计们,我究竟做错了什么。我的网站上有一些可以双击使用的文件夹。然而不知何故,我的 window.location.replace 并没有触发浏览器历史记录。 如果我使用正常点击而不阻止默认,我可以
我有一个带有嵌入列表的基本列表项,当我双击 li 中非嵌入 ul 的任意位置时,我想打开该列表项。 List Name
我的问题在标题中:如何使用 dblclick 事件打开 jquery fancybox (http://www.fancybox.net/) ? 提前感谢您的回复:) 编辑:我尝试过,但似乎不起作用,
这是我的两个函数,单击它就可以正常工作,但是在 dblclick 上两个函数都执行,知道吗?我尝试使用 live 而不是 delegate 但两个函数仍然在 dblclick 上执行 // Chang
JS angular.module('my-app', []).controller('Ctrl', function ($scope, $timeout) { var t; $sco
我有 2 个输入字段 a) 电子邮件和 b) 私有(private)邮箱 我想在用户双击电子邮件字段时显示警报消息 1,在用户双击 private_email 字段时显示警报消息 2。因此,我使用以下
我有JSFiddle带有可调整大小的框。双击文档上的任意位置时,框颜色会在米色和红色之间切换。 问题是,有时在调整框的大小后释放鼠标左键时,会生成 dblclick 事件并且框变为红色。有时您可以在不
假设我有一个 。当您单击此跨度时,我想要一个 save()功能来开火。当您双击跨度时,我想要一个 rename()函数来触发。 但是,如果双击跨度,首先会出现 click事件将触发,然后 dblcl
我正在使用“dblclick”事件,如果我为形状注册单击和 dblclick 事件,则在调用 dblclick 事件代码之前会调用 click 事件两次。这种行为让我的代码变得疯狂。因为我有一些单击操
我有一个 html 页面,只有一个包含两行的表格,我想通过 jQuery 添加 dobleclick 事件。我的问题是这个代码不运行,但是如果我使用 chrome 的 javascript 控制台并手
我遇到了问题。我正在尝试提出前提。如果用户 id 等于任务创建者 id,则如何允许用户使用 onClick 函数,如果不是,则不允许。我尝试这样做 UserNow 是现在的用户,而 userown 是
我编写了以下代码: http://jsfiddle.net/3Zxx9/ HTML: How old are you? x
我是一名优秀的程序员,十分优秀!