我有一个应用程序,它有一个带有 DIV 的页面,当用户单击我的导航栏的一部分(包含在同一页面中)时,它会更改其内容。
所以这是我的一页应用程序中的 div
<div id="content">
</div>
现在我使用 jQuery 方法用其他 html 文件填充这个 DIV .load()
(输入到 .load 方法中的 HTML 文件,我已经剥离了标签等......)
这是我的 JavaScript
$("#content").load("views/"+ pageName + ".html", function(){
// do stuff… like load JavaScript files, etc...
}).fadeIn("fast");
这工作正常,但是.load()
一旦加载到 DOM,使用我希望附加一个函数到页面的内容。
所以说我 .load() 使用上面的 JavaScript 从 HTML 页面中获取以下内容
<p id="newText"> Blah blah blah blah blah blah blah blah blah blah blah</p>
我希望在加载后引发一个事件,但是我不确定我应该将它绑定到什么,比如.live()
,.on()
或者.ready()
......我在想这样的事情......</p>
$('#newText').load(function() {
alert("Handler for .load() called for newText. This is in the DOM and loaded!");
});
有谁知道我应该怎么做?
* 更新 *
好吧,也许我需要解释一下......我从另一个开发人员那里继承了这个应用程序,我认为它是用糟糕的架构/模型构建的。无论如何,加载的页面或视图有很多隐藏的选项卡/切换内容(因此我不喜欢该架构),因此尽管加载了视图/HTML,但在首次加载时,其某些内容可能在 DOM 中不可用。这就是为什么我希望在使用 jQuery Ajax .load() 的基础上检测何时将某些内容加载到 DOM 中