JQuery将页面加载到带有样式的div中

时间:2012-01-23 04:14:14

标签: javascript jquery css ajax

我正在尝试使用.load,因此我可以将外部页面加载到当前用户页面上的div中。当我调用.load时,是否会加载内容,然后使用该页面中定义的当前样式表对其进行样式设置?如果不是,我会怎么做呢?实施例;

<head>
  <link ref="stylesheet" href="main.css"/>
</head>
<body>
  <div class="section">
    <h2>Say this div was loaded with .load after page loaded</h2>
  </div>
</body>

如果.section是通过.load加载的,那么样式是否会加载当前页面并在加载后修改该div,或者只是加载了没有样式的html。如果是后者,如何在不使用<style>标签的情况下设置样式?

4 个答案:

答案 0 :(得分:2)

无论何时以导致重绘的方式更改DOM(例如向DOM添加可见元素),都会根据CSS样式表中的所有规则检查每个元素。

所以直接回答你的问题。是的,样式将添加到随时添加到DOM的元素中。

答案 1 :(得分:1)

如果css在包含section div的页面上可用,则在load呈现内容后将应用样式。此外,如果样式是load响应的一部分,那么它也将应用样式进行渲染。

如果页面上没有样式,并且您没有在加载响应中获取它,那么您必须使用ajax显式获取它,或者在页面中添加带有相应样式表URL的链接标记。

答案 2 :(得分:1)

您当前页面的样式将适用于通过.load

加载的内容

答案 3 :(得分:1)

您可以在主.css文件中指定CSS,因此在添加DOM时,样式将从主CSS文件中获取。