我有一组jqueryui标签,点击后会动态加载其内容。它工作得很好,除了其中一个页面本身使用jquery插件。这导致两个问题:
保存选项卡的主页面在加载时会引发错误,因为有js引用尚未加载的元素(这些元素位于包含依赖于插件的代码的外部文件中)
如果我将触发插件功能的js嵌入到外部文件中,则它位于主页面的document.ready函数之外,因此无法使用。
基本上我正在寻找一种技术,允许我将一个外部html文件加载到DOM中,同时不会破坏主页本身,因为已经存在的JS期望HTML还没有。
感谢。
答案 0 :(得分:0)
您需要将jquery代码封装在$(document).ready()
函数内。如果您说等待通过AJAX加载的代码可能会或可能不会与父页面同时加载(即用户必须单击选项卡加载它,而不是它是默认加载)那么您设计很糟糕,你必须重新考虑这种方法。基本上,您的父页面中的代码不能引用尚不存在的DOM元素,并且在您的用户单击选项卡之前可能不存在。
答案 1 :(得分:0)
我还没有使用它,但我认为这就是你要找的东西
此插件为具有动态加载内容或完整事件绑定的网站带来了干净,轻便的解决方案。 事件的绑定,处理程序的Intead与匹配的选择器一起注册。 他们仍然会为新添加的内容工作。 这是使用事件委派实现的,因此该插件仅适用于冒泡的事件