Javascript 当父元素有自己的处理程序时,子元素的处理程序

Javascript 当父元素有自己的处理程序时,子元素的处理程序,javascript,jquery,Javascript,Jquery,我有以下标记: <div id="basket-btn"> <button class="buyout" type="button"><span>Text</span></button> </div> 问题在于,当我单击div或button时,只会第一次单击处理程序。如何解决它? 谢谢 更新: 第一次单击滑动面板时,它会上下移动。此幻灯片面板上的第二个“为”按钮。不确定您期望的输出是什么,但如果您希望在单击时发出两个警报,

我有以下标记:

<div id="basket-btn">
<button class="buyout" type="button"><span>Text</span></button>
</div>
问题在于,当我单击div或button时,只会第一次单击处理程序。如何解决它?
谢谢

更新

第一次单击滑动面板时,它会上下移动。此幻灯片面板上的第二个“为”按钮。

不确定您期望的输出是什么,但如果您希望在单击时发出两个警报,这似乎对我有效:

<script type="text/javascript">
 $(document).ready(function(){
      $('#basket-btn').click(function(){
           alert(1);
      })

      $('.buyout').click(function(){
           alert(2);
      })
 });
</script>

$(文档).ready(函数(){
$(“#篮子btn”)。单击(函数(){
警报(1);
})
$('.buyout')。单击(函数(){
警报(2);
})
});
或者,您可能需要一个函数,该函数可以检查子按钮“.-buyout”是否已单击或未使用data()。这只允许显示警报(1)或警报(2)。并附上以下注释:

•点击。-买断按钮时,将触发警报(2)

•如果单击了div#basket btn,并且未单击。-收购,则会触发警报(1)

<script type="text/javascript">
        $(document).ready(function(){
            $('#basket-btn').click(function(){
             if($(this).children().data('clicked') != true) {
                // if child button has not been clicked; do this...
                alert(1);
             }
            })

            $('.buyout').click(function(){
                // if child button is clicked; do this...
                alert(2);
                $(this).data('clicked', true);
            })
        });
</script>

$(文档).ready(函数(){
$(“#篮子btn”)。单击(函数(){
if($(this).children().data('clicked')!=true){
//如果未单击子按钮,请执行此操作。。。
警报(1);
}
})
$('.buyout')。单击(函数(){
//如果单击了子按钮,请执行此操作。。。
警报(2);
$(此).data('clicked',true);
})
});

以上内容可能更符合您的预期效果。

不确定您期望的输出是什么,但如果您希望在单击时同时发出两个警报,这似乎对我很有用:

<script type="text/javascript">
 $(document).ready(function(){
      $('#basket-btn').click(function(){
           alert(1);
      })

      $('.buyout').click(function(){
           alert(2);
      })
 });
</script>

$(文档).ready(函数(){
$(“#篮子btn”)。单击(函数(){
警报(1);
})
$('.buyout')。单击(函数(){
警报(2);
})
});
或者,您可能需要一个函数,该函数可以检查子按钮“.-buyout”是否已单击或未使用data()。这只允许显示警报(1)或警报(2)。并附上以下注释:

•点击。-买断按钮时,将触发警报(2)

•如果单击了div#basket btn,并且未单击。-收购,则会触发警报(1)

<script type="text/javascript">
        $(document).ready(function(){
            $('#basket-btn').click(function(){
             if($(this).children().data('clicked') != true) {
                // if child button has not been clicked; do this...
                alert(1);
             }
            })

            $('.buyout').click(function(){
                // if child button is clicked; do this...
                alert(2);
                $(this).data('clicked', true);
            })
        });
</script>

$(文档).ready(函数(){
$(“#篮子btn”)。单击(函数(){
if($(this).children().data('clicked')!=true){
//如果未单击子按钮,请执行此操作。。。
警报(1);
}
})
$('.buyout')。单击(函数(){
//如果单击了子按钮,请执行此操作。。。
警报(2);
$(此).data('clicked',true);
})
});

以上内容可能更符合您的预期效果。

两个处理程序运行良好是一个现场演示

确保将函数包装在里面

$(document).ready(function(){
//your stuff here
});
如果您想阻止单击按钮时的第一个功能,可以使用
stopImmediatePropagation()


是一个正在运行的实时演示。

两个处理程序运行良好是一个现场演示

确保将函数包装在里面

$(document).ready(function(){
//your stuff here
});
如果您想阻止单击按钮时的第一个功能,可以使用
stopImmediatePropagation()


是一个正在运行的实时演示。

停止即时建议
这就是我需要的。谢谢。
停止立即推荐
这就是我需要的。谢谢