我正在使用.load()
将我网站中的其他网页加载到div
。有没有办法在新加载的页面上添加jquery ui增强功能?我在考虑使用.delegate()
或.live()
,但无法弄清楚将它们绑定到哪个事件?或者有更好的方法吗?
答案 0 :(得分:2)
你可以使用jQuery的ajax函数提供的回调函数 - 对于load()
,语法看起来像:
$('#ele').load('somewhere #newEle', function(){
$(this).find('#newEle').slider();
});
或者,查看全局ajax事件,例如ajaxSuccess
或使用扩展jQuery现有ajax函数的插件,其功能类似于您需要的功能,例如:http://www.protofunc.com/scripts/jquery/ajaxManager/
答案 1 :(得分:1)
您希望在complete
回调中使用jQuery UI代码。见the API。例如:
$('#myDiv').load('/some/page.html', function() {
// jQuery UI hotness here
});
答案 2 :(得分:0)
您应该使用委托将事件绑定到要加载内容的div,因此如果您的div的id为somediv
,那么您可以像这样绑定它们...
$('#somediv').delegate('a', 'click', function() {
})
.delegate('input', 'focusin', function() {
})
.delegate('li', 'click', function() {
});
这些显然只是组成了一些例子......但你可以像这样链接你的处理程序并将它们绑定到你的内容加载div。
享受:)