我试图得到它,所以当可拖动元素已经停止了我分配stopPropagation的两个元素。代码到目前为止,没有错误,但不能工作。
$( "#pop_up" ).draggable({
handle: "#pop_header",
containment: "parent",
stop:function(e) {
if ($(e.target).attr('id') === "submit") {
e.stopPropagation();
return false;
}
else if ($(e.target).attr('id') === "close")
{
e.stopPropagation();
return false;
}
}
});
基本HTML模型-
<div id="pop_up">
<div id="pop_header">
<span class="button" id="submit"></span>
<span class="button" id="close"></span>
</div>
<div id="pop_body">
</div>
</div>
有什么想法让这些元素成为可点击的,因为现在他们不像我告诉我的jQuery那样可点击-
$('.button #close').click(function() {
$('#pop_up').hide();
});
$('.button #submit').click(function() {
var miniVis = $('#minimize_wrapper').css('display');
if(miniVis ==="block"){
$('#minimize_wrapper').slideUp();
} else {
$('#minimize_wrapper').slideDown();
}
});
我要做的就是把第一个draggable代码改成-
$( "#pop_up" ).draggable({
handle: "#pop_header",
containment: "parent",
stop:function(e) {
if ($(e.target).attr('id') === "parent-of-buttons") {
e.stopPropagation();
return false;
}
}
});
然后我把第二个代码改成了-
$('#parent-of-buttons').on('click','#close',function(){
$('#pop_up').hide();
});
$('#parent-of-buttons').on('click','#submit',function(){
var miniVis = $('#minimize_wrapper').css('display');
if(miniVis ==="block"){
$('#minimize_wrapper').slideUp();
} else {
$('#minimize_wrapper').slideDown();
}
});
我们希望这将帮助其他人尝试这样做。你不能停止按钮本身的传播,但你可以停止父元素的传播。