gpt4 book ai didi

jquery - 使 stopPropagation 在 html 按钮单击上工作

转载 作者:行者123 更新时间:2023-12-01 08:03:56 25 4
gpt4 key购买 nike

我有一个可拖动的 div 和一个 html 按钮。

我希望在单击按钮时使用 stopPropagation 停止 div 的可拖动,但由于某种原因,可拖动事件仍在工作。

任何人都可以看一下我的 jsfiddle 并看看我哪里出错了

这是 jsfiddle http://jsfiddle.net/Dp2z6/3/

和代码

#draggablediv {
background-color:#ff0000;
width:100px;
height:100px;
top:50px;
left:50px;
}

#editBtn {
font-size:12px;
}

$(function () {
$("#draggablediv").draggable();
});

$('#editBtn').click(function (event) {
event.stopPropagation();
focusDiv();
});

function focusDiv() {
$('#draggablediv').focus();
}

<div id="draggablediv">draggable Div
<br>
<input type="button" id="editBtn" value="click me">
</div>

最佳答案

听起来您想要做的是在单击按钮时停止可拖动行为。 event.stopPropagation(); 只会阻止按钮上的事件向上冒泡到父 div,但不会影响单击 draggablediv 时发生的情况直接。

您需要使用disabledestroy可拖动小部件方法来停止可拖动行为。您可以在 API page 上了解它们之间的区别。用于可拖动小部件。

$('#editBtn').click(function (event) {
$("#draggablediv").draggable('destroy')
focusDiv();
});

<强> Working Demo

关于jquery - 使 stopPropagation 在 html 按钮单击上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17809684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com