我知道你不能将load事件与委托函数一起使用但是我想知道是否存在产生类似效果的hack?我想使用“data-role ='table'”属性来识别需要加载AJAX并初始化请求的所有表。
<script type="text/javascript">
$(document).delegate( "table[data-role='table']", "load", function(e) {
//load AJAX Table
});
</script>
<table data-role="table" class="table-striped">
...
</table>
该代码也可在jsfiddle
上找到注意:我需要使用委托,因为可能会在运行时添加额外的表(在$(文档).ready之后)
答案 0 :(得分:0)
只是一个建议在我的头顶,但是如下:
$(function() { // document.ready shortcut
$("[data-role=table]").each(function(x, item) { // for each element which has this attribute.
// identify which actual table this is (using .index() perhaps, or by id or classname)
// call ajax to get stuff
// load it into the relevant place
});
}
更多的概念而非工作解决方案。希望它有所帮助。
答案 1 :(得分:0)
Webkit会抛出一些DOM突变事件,但我认为它们甚至会被折旧。
它现在变得有点老了,但是.livequery(http://docs.jquery.com/Plugins/livequery)仍然是我所知道的最佳选择。您可以使用:
$("[data-roll=table]").livequery(function() {
...
});
只要将与您的选择器匹配的新元素添加到页面,就会触发该回调。