jQuery 事件 - 元素变得可见



可能的重复项:
jQuery 事件,用于在div 可见时触发操作

当 ajax 加载的元素变得可见时,我如何运行我的一些代码("显示"从"无"切换到"块")?好吧,我需要一些事件,例如

$('#element').live('show', function(){
// CODE
});

或监视删除/向元素添加某些类的事件

通过使用jquery-emerge插件解决了这个问题

https://github.com/morr/jquery.appear

没有内置的jQuery可以让你做到这一点。你可以看看实时查询插件。例如:

$('#element').livequery(function() {
    // CODE
});

当一个带有 id="element" 的元素被添加到 DOM 中时,应该执行回调。

每 1 秒运行一次检查。如果#element存在且可见,则清除(停止)间隔并执行代码。

var checkVisible = setInterval(function(){
    // if element doesn't exist or isn't visible then end
    if(!$('#element').length || !$('#element').is(':visible'))
        return;
    // if element does exist and is visible then stop the interval and run code
    clearInterval(checkVisible);
    // place your code here to run when the element becomes visible
},1000);

不可避免地,你有一些jQuery事件回调来显示元素;在这些事件回调中,你应该放置"当元素可见时"运行代码。

你试过jQuery.load()吗?

http://api.jquery.com/load-event/

它至少应该适用于图像,脚本标签等......而不是没有URL的元素。

否则,实时查询应该会有所帮助:

jquery 实时事件,用于添加 DOM 元素

相关内容

  • 没有找到相关文章

最新更新