首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jquery中是否可以为div的显示更改创建一个事件侦听器?

在jquery中是否可以为div的显示更改创建一个事件侦听器?
EN

Stack Overflow用户
提问于 2015-06-27 14:31:55
回答 3查看 208关注 0票数 1

我有一个向导,每个步骤都是一个div与它自己的id {step-1,step-2,...}导航发生在改变显示的步骤。从第1步到第2步:

代码语言:javascript
复制
step-1 -> display="none" and 
step-2 -> display="block"

现在我想要一个事件来监听step-2的显示,当它变成阻塞调用一些函数时。谢谢

EN

回答 3

Stack Overflow用户

发布于 2015-06-27 14:52:33

现代浏览器支持使用MutationObserver。使用.observe()方法将对象添加到观察者后,当该对象的属性发生变化时将触发回调。回调将收到详细说明新旧属性的Mutation Record

(请注意,这不涉及任何JQuery)。

票数 3
EN

Stack Overflow用户

发布于 2015-06-27 15:40:38

您可以使用if。如果#step-2当前为display:none,我们需要先将其更改为block,然后执行一些操作。

代码语言:javascript
复制
$('#next').click(function(){
 if($('#step-2').css('display') == 'none'){
     $('#step-2').css({
         'display' : 'block'
     });
//do some thing after #step-2 display block
}else{
//do some thing else
}
});

代码语言:javascript
复制
$('#next').click(function(){
     if($('#step-2').is(':visible'){
     //do some thing
}
});

这不是一个好方法,但我认为它会奏效。

票数 2
EN

Stack Overflow用户

发布于 2015-06-30 15:18:35

我是在你的帮助下完成的。但我找到了聪明的蜥蜴。我用过了。https://github.com/mstratman/jQuery-Smart-Wizard

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31085918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档