Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery加载页面会覆盖我的CSS_Jquery_Html_Css - Fatal编程技术网

Jquery加载页面会覆盖我的CSS

Jquery加载页面会覆盖我的CSS,jquery,html,css,Jquery,Html,Css,我正在使用jquery的行将内容加载到页面上的一个div中 $('#divURLContent').load('http://myurl'); 问题是我正在加载的页面上的CSS覆盖了它加载到的页面上的CSS。有什么方法可以防止这种情况发生吗?您最好的选择是重新设计正在加载的页面,使其只包含希望注入页面的标记,而不是包含CSS的整个页面,或者使用$.ajax而不是$.load加载页面,并在实际将其插入DOM之前使用jQuery提取正文内容。前一种方法将减少您需要转移的数据量,后一种方法将更加优雅

我正在使用jquery的行将内容加载到页面上的一个div中

$('#divURLContent').load('http://myurl');

问题是我正在加载的页面上的CSS覆盖了它加载到的页面上的CSS。有什么方法可以防止这种情况发生吗?

您最好的选择是重新设计正在加载的页面,使其只包含希望注入页面的标记,而不是包含CSS的整个页面,或者使用$.ajax而不是$.load加载页面,并在实际将其插入DOM之前使用jQuery提取正文内容。前一种方法将减少您需要转移的数据量,后一种方法将更加优雅地降级,因为如果用户不通过AJAX访问某个页面,仍然会看到该页面

在DIV中加载整页通常没有意义

您应该注意在服务器中只呈现一组HTML,而不呈现头部或正文,或者选择要插入到DIV中的内容部分

在您的情况下,您可以做的最简单的事情是:

$('#divURLContent').load('http://myurl body');
这将只将加载页面的body标记内的内容放入DIV


查看“加载页面片段”了解更多信息。

我能想到的一种方法是在加载
div
元素后(在
load
的回调方法中)操作
innerHTML
,并使用regex剥离CSS。@Shadow:regex?为什么?只需将其作为DOM元素导入,并以这种方式去除
style
属性,它就更加健壮,没有理由不这么做。@因为我直到现在才知道这样的事情是可能的。我看到有人已经为你的想法编写了代码。:)甜蜜的。。。。真有魅力$('#divURLContent').load('#ContentdivID');