如何加载外部HTML文档,然后访问/操纵其CSSOM?

时间:2019-04-21 19:59:02

标签: javascript dom cssom

我想做的是:从同一站点的配置面板中加载html,然后使用js脚本访问其styleSheets。最后,在使用CSSOM进行操作之后,我需要从其样式表中加载数据,该页面将从其启动。

我尝试使用jQuery.get()加载文档,然后在其回调中使用createHTMLDocument创建了一个新的文档对象。 可悲的是,我在先前的问题中找不到答案。我试图查找与DOM和CSSOM相关的任何内容,但对于所尝试执行的操作却一无所获。与Google相同:没有人分享这样的内容。

这就是我所做的:

jQuery.get("http://example.com/htmldocument", function(htmlResponse) {
            var doc = document.implementation.createHTMLDocument('');
            doc.open()
            doc.write(htmlResponse)
            doc.close()
            console.log(doc.styleSheets)

            //various stylesheets manipulations using CSSOM
        })

问题是doc.styleSheets为空,但是目标文档有12个样式表。无论我正在加载什么文档,该对象仍然是空的:我认为我对document.implementation.createHTMLDocument()并不了解,但是我找不到它是什么。 为了使该工作正常进行,我们进行了一次绝望的尝试,试图删除对open()close()的调用。无济于事。

感谢您的帮助。

0 个答案:

没有答案