我正在使用jquery ajax从一个页面加载内容到当前的一个div,类似于Gmail收发箱,垃圾箱等之间切换的方式。我正在使用jQuery的加载方法Ajax加载JavaScript和css内容
$("#divGlobal").load("newPage.html #container");
将我需要的内容加载到我的div中。
newpage.html #container
也有关联的javascript &与它相关联的css文件。现在我通过将<script>
和<link>
标签附加到<head>
来加载它们,但它并不总是有效。文件始终加载(我正在观看Firefox中的XHR信息),但并不总是正常工作。例如,如果我加载关联文件(包括用于UI的jQuery函数),则一切正常。但是,如果我然后加载page2.html
并返回到page1.html
,文件加载但jQuery函数没有响应。
有没有更好的加载方式javascript &与我正在加载的内容相关的css文件?
以这种方式加载内容是一个非常糟糕的主意;它会使页面更难以维护,甚至会导致可能的XSS漏洞。不要发送完整的html页面(包含重复的'','
'和''标签),请考虑使用'AJAX'以JSON等纯数据语法仅载入必要的页面数据。其他选项包括一次加载所有内容(较少的HTTP请求),或者甚至在适当的情况下使用iframe。 – 2012-08-04 01:00:22