我想知道是否可以检测何时完成绑定?例如,我有一个表与jquery datatables.net插件绑定,该插件位于ajax jquery ui选项卡中。
因此当标签加载内容(表格)时。我有一个jquery livequery等待表出现。
因此,当表格显示时,它会将datatables插件绑定到它。然而,我得到一个闪烁的切换。
我想知道是否有隐藏元素直到完成所有绑定?
由于
修改
正如一些人已经指出数据表有一些可以解决我的问题的回调。然而,这个问题不仅限于此插件,而且可能仅限于其他可能没有此类回调的插件,甚至可能内置在点击,提交等内容中。
当然,其中一些像click一样可能不像插件渲染那样通知,因为当用户点击该元素时,绑定可能就完成了。
我想我试图看看是否有可能延迟一个元素被渲染,直到完成它们的所有内容完成。
答案 0 :(得分:0)
您可以使用load()事件。
将load事件发送给元素 当它和所有子元素一直存在时 完全装满了。此事件可以发送到与URL关联的任何元素:图像,脚本,框架,iframe和窗口对象。
$('#whatever').load(function() {
// Handler for .load() called.
});
在您的情况下,默认情况下隐藏元素,然后在加载绑定后在加载函数内再次显示它。
答案 1 :(得分:0)
DataTables插件具有many callback functions的钩子,您可以成功隐藏表格并使用 fnInitComplete 显示它。
答案 2 :(得分:0)
听起来这个问题类似于FOUC,所以你的答案可能类似于解决方案,即隐藏所有内容,然后在所有其他jQ运行后让jQ添加或删除一个类。