我正在开发一个网页捕获器,发现从Reddit.com捕获的网页的一些样式表规则丢失了。
<style type="text/css" data-styled-components="..." data-styled-components-is-local="true">...</style>
打开JavaScript后,脚本将处理样式元素并清空:
<style type="text/css" data-styled-components="" data-styled-components-is-local="true"></style>
这就是为什么我的捕获者没有得到样式表。
但是,对于Reddit.com页面,在清空样式元素之后,仍然可以通过
document.styleSheets[1].cssRules
,而
document.styleSheets[1].ownerNode.textContent
""
.
另外,如果我通过运行
document.styleSheets[1].ownerNode.textContent = "/*null*/"
文档.样式表[1].cssRules
变成空的,网页被重新呈现,就像我的抓捕者得到的一样。
我被这种奇怪的行为弄糊涂了。我想知道为什么以及如何在清空样式元素后保留Reddit.com页面的样式。如有任何信息,敬请垂询。