如何让Jquery从div中的外部加载的html中工作

时间:2011-05-03 13:57:44

标签: jquery flash html

我正在设置一个页面,该页面使用flash菜单通过以下调用将html页面加载到div容器中:

on (release){
getURL("javascript:getPage('test.html')");
}

加载工作正常,但我的一些页面有特定的jquery脚本,这就是我到目前为止所发现的。

我假设我需要做的就是将脚本导入,css样式表和jquery函数转移到我的主文档中,但它不起作用。

我也尝试将html导入为完整的html,它可以自行运行,但不能导入到主文档中。

最近我听说我应该尝试将jquery函数调用转移到已加载文档的末尾,转到内容之后,但这对任何一个都没有帮助......

我的脚本工作,而不是在导入时,所以我想我的问题是如何让主文档和导入文档相互配合?是什么说你我们把它作为一个快速入门教程供我们所有人参考?

2 个答案:

答案 0 :(得分:0)

所以它取决于加载页面上的脚本是做什么的,你可以查看jQuery中的live()函数。

或者,您可以在AJAX调用中使用回调函数来为加载的页面设置jquery事件处理。

答案 1 :(得分:0)

使用ready()命令通常可以帮助(它是一个Dom监听器)以及将代码移动到底部,有些人会认为这会使页面加载更有效(另一个帖子的一个点)

然而,这个问题出现了很多,10次中有9次与脚本相关,或者Jquery链接本身在包含它的页面中无效。例如,如果执行jquery的页面位于/ scripts文件夹中,并且它调用也位于/ scripts文件夹中的jquery.js,则它可以正常工作。但是,当您将文件包含在位于/文件夹中的index.htm中时,突然链接到jquery正在/中查找jquery文件,而不是在/ scripts中查找。检查此内容的简便方法是查看来源并单击链接(在Chrome中运行良好)以查看是否找到了文件。如果是这样,你很好......如果没有,请玩你的链接路径。更好的是,尽可能使用CDN hosted versions代码。

而且,对于noobs,可以在文档头之外的文件中包含jQuery,它们仍然可以正常工作。我的公司在通过(ugh)iFrame包含在其他网站中的网络表单上使用该方法。它完美地提供了数百个webforms!

最后一件事。作为一名UI工程师多年来,我一直看到一个非常明显的趋势,即Flash菜单真的很快就会消失(随后Flash开发人员招聘也会严重下降)他们经常会遇到严重的SEO问题,更多努力维护,并可能有其他性能影响。这些天你可能会得到一个Javascript,纯CSS或HTML5菜单,这些菜单可以做同样的事情或者更好,并且符合100%w3标准。也许是个人偏好,但在您继续学习时,这绝对是一个不断增长的趋势。