我想选择伪元素 :after
这是我的css:
show-more:after
{
content : (" > ");
}
Run Code Online (Sandbox Code Playgroud)
JQuery 码
$(function(){
$('.show-more:after').click(function() {
alert("Yes");
});
});
Run Code Online (Sandbox Code Playgroud) 我正在开发一个网页捕获器,并发现从Reddit.com捕获的网页的某些样式表规则将丢失.
经过进一步调查后,我发现Reddit.com页面的源HTML代码有一个这样的样式元素:
<style type="text/css" data-styled-components="..." data-styled-components-is-local="true">...</style>
Run Code Online (Sandbox Code Playgroud)
当JavaScript处于启用状态时,样式元素由脚本处理并清空:
<style type="text/css" data-styled-components="" data-styled-components-is-local="true"></style>
Run Code Online (Sandbox Code Playgroud)
这就是我的捕获者未能获得样式表的原因.
当脚本更改样式元素的内容时,页面的文档样式表通常会相应地更改,并且将重新呈现页面以反映更改.
然而,对于Reddit.com页面,风格元素被清空后,其样式表规则仍然可以通过访问document.styleSheets[1].cssRules,而document.styleSheets[1].ownerNode.textContent为"".
另外,如果我通过运行脚本来修改样式元素document.styleSheets[1].ownerNode.textContent = "/*null*/",document.styleSheets[1].cssRules变为空并且重新呈现网页,就像我的捕获者所拥有的那样.
奇怪的行为令我感到困惑.我想知道为什么以及如何在清空样式元素后Reddit.com页面保留样式.任何信息表示赞赏.