TWT
2016-04-24 11:42
<script>
$(function(){
$(".btn").click(function(){
$("#mymodal").modal("toggle");
$('#mymodal').on('hide.bs.modal',function(){
alert('我要隐藏啦');
})
});
});
// $('#mymodal').on('hide.bs.modal',function(){
// alert('我要隐藏啦');
// })
</script>为何代码段放置在【click()事件里面时,每增加一次点击,弹出就会增加两次】,而【代码段单独放置时则只会弹出一次警告框】,警告框弹出次数不随点击次数的增加而增加?
你可以把hide.bs.modal看做是一个和click 一样的动作。
hide.bs.modal这个动作的意思是:在hide方法调用时(但还未关闭隐藏)立即触发,就是当你关闭弹出框的时候就立刻触发这个动作,而这个动作绑定的是一个function{ alert('我要隐藏啦'); } 事件。
现在回答你的问题,
你把代码写在里面,每点击一次按钮,都会重复绑定一次事件$('#mymodal').on('hide.bs.modal',function ) , 这个事件绑定不是覆盖的,而是累加的,相当于你绑定了很多次同样的事件,每一个循环你点击了两次按钮("点击我","关闭"),所以增加两次。
玩转Bootstrap(JS插件篇)
128653 学习 · 305 问题
相似问题