Javascript 触发父div的click事件
Javascript 触发父div的click事件,javascript,jquery,Javascript,Jquery,我有一个问题。单击按钮时,我的取消按钮嵌套在触发器中的div中。单击。这会导致slideUp和slideDown同时触发,从而使div保持可见。我尝试添加一个状态来防止div再次向下滑动,但没有达到预期效果 $(add).click(function () { var inputDiv = Polymer.dom(root_root).querySelector("#inputDiv"); if(state == 0){ $(inputDiv).slideDown(300); }
我有一个问题。单击按钮时,我的取消按钮嵌套在触发器中的div中。单击。这会导致slideUp和slideDown同时触发,从而使div保持可见。我尝试添加一个状态来防止div再次向下滑动,但没有达到预期效果
$(add).click(function () {
var inputDiv = Polymer.dom(root_root).querySelector("#inputDiv");
if(state == 0){
$(inputDiv).slideDown(300);
}
state = 1;
});
$(cancel).click(function () {
var inputDiv = Polymer.dom(root_root).querySelector("#inputDiv");
$(inputDiv).slideUp(300);
state = 0;
});
有人知道如何解决这个问题吗?你应该
停止匹配元素上当前正在运行的动画
用于停止从#取消
按钮到父级#添加
div的单击:
$("#cancel").click(function(e) {
e.stopPropagation();
...
});
其他人用
stopPropagation()
进行了评论,但您也不能展开#inputDiv
,除非它已经可见,例如:
$(function(){
$("#add").click(function () {
if($("#inputDiv").css('display') == 'none'){
$("#inputDiv").slideDown(1000);
}
});
$("#cancel").click(function () {
$("#inputDiv").slideUp(1000);
});
});
请发布HTML代码。感谢您的回答,遗憾的是这样做会将div锁定在向下位置。@Michelindoll我不明白您的意思,当测试代码中包含stop时,div将向下滑动很好,但当按下“取消”按钮时,它拒绝再次向上移动。@Michelindol将更新我的answer@Michelindoll小提琴中的代码(在基于此答案的修改之前)应该在问题本身中。
$(function(){
$("#add").click(function () {
if($("#inputDiv").css('display') == 'none'){
$("#inputDiv").slideDown(1000);
}
});
$("#cancel").click(function () {
$("#inputDiv").slideUp(1000);
});
});