我正在开发一个将一些内容加载到div中的页面。
我正在使用
$("#divid").load("page.php");
此页面包含CSS。
当我尝试使用firebug检查内容时出现问题,似乎多次应用相同的css规则。
这是我的代码错误还是在使用jquery时“预期”?
我可以只加载部分代码吗?
答案 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文件,而不是像目前正在进行的嵌入式样式