【问题标题】:How to extract styleSheets from the document created via createHTMLDocument method如何从通过 createHTMLDocument 方法创建的文档中提取样式表
【发布时间】:2012-01-18 23:38:25
【问题描述】:

以下代码 sn-p 将使用 HTML 代码创建新的文档对象。 通过引用以下语句,我应该得到附加样式表的数组,但我得到的结果为零。

doc.styleSheets

但类似的语句对于当前文档也适用,例如

document.styleSheets.

帮助我找出我做错了什么。

var doc = document.implementation.createHTMLDocument(title);
doc.documentElement.innerHTML = '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Title</title>
    <link rel="stylesheet" href="http://localhost/style.css" type="text/css" />
  </head>
  <body>
        Hello world!
  </body>
</html>';

var sheets = doc.styleSheets; // it gives ZERO results

【问题讨论】:

  • 发现,与新文档关联的资源在添加到 DOM 之前不会加载。除了使用 iframe 方法来实现这一点之外,他们还有什么方法吗?

标签: javascript dom stylesheet


【解决方案1】:

嗯……

您是否正在使用 jQuery(或一些类似的框架)?如果是这样,您可以尝试等到 DOMREADY 事件触发,然后获取您的样式表数组。

看看@这个post了解更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多