是否可以编写一个JQuery函数来删除具有特定:before
内容的所有内容。
这里有一个示例声明,可以向您展示代码:
删除文档中包含:before
伪元素且content
设置为"delete me"
的所有元素
答案 0 :(得分:1)
嗯,你可以尝试这样的事情:
var sheets = document.styleSheets;
var len = sheets.length;
var ba = /:before|:after/;
// Loop throught all stylesheets
for (var i = 0; i < len; i++) {
// work out which method to get the CSS rules
var sheet = sheets[i],
rules = sheet.cssRules || sheet.rules;
// Loop through all rules
for (var r = 0, rule; rule = rules[r++];) {
// if this rule uses one of the test selectors
if (rule.selectorText.match(ba)) {
if (rule.style.content.indexOf('delete me') !== -1) {
var elems = document.querySelectorAll(rule.selectorText.split(':')[0]);
for (var e = 0, elem; elem = elems[e++];) {
// remove the node
document.body.removeChild(elem);
}
}
}
}
}
答案 1 :(得分:0)
有一个简单的答案,只需在该元素上添加类,然后通过该类删除它。 dom中不存在伪元素,为什么你不能通过jquery或js
直接删除它们