JQuery异步加载只是文档的一部分

时间:2014-01-22 10:41:55

标签: jquery html css firebug

我正在开发一个将一些内容加载到div中的页面。

我正在使用

$("#divid").load("page.php");

此页面包含CSS。

当我尝试使用firebug检查内容时出现问题,似乎多次应用相同的css规则。

这是我的代码错误还是在使用jquery时“预期”?

我可以只加载部分代码吗?

2 个答案:

答案 0 :(得分:2)

它应该像那样工作。基本上.load()方法将解析HTML并将其插入div。

  

jQuery使用浏览器的.innerHTML属性来解析检索到的文档并将其插入到当前文档中。在此过程中,浏览器通常会过滤文档中的元素,例如<html><title><head>元素。因此,.load()检索的元素可能与浏览器直接检索文档的内容不完全相同。

解决问题的最简单方法是:

$('#divURLContent').load('page.php body');

只会加载page.php的“body”部分。通常,您不应该在div中加载整个页面,而只需加载代码片段。

请查看此处以获取进一步参考:Jquery to load a page overrides my CSS

答案 1 :(得分:0)

是的,如果您已经加载了包含CSS样式的HTML页面,那么这些样式也将包含在您当前的页面中。

我建议您使用外部css文件,而不是像目前正在进行的嵌入式样式