我在页面顶部有一行,
<link rel="stylesheet" href="style/style.css">
如何通过 jQuery 或 javascript 删除它?
这样累,但不工作
$(link['style/style.css']).remove();
我在页面顶部有一行,
<link rel="stylesheet" href="style/style.css">
如何通过 jQuery 或 javascript 删除它?
这样累,但不工作
$(link['style/style.css']).remove();
jQuery 按属性选择的格式如下:
$('link[href="style/style.css"]');
然后你需要禁用它:
// prop() suggestion from @jahroy
$('link[href="style/style.css"]').prop("disabled", true);
在大多数现代浏览器中,您可以遍历样式表列表并禁用您想要的样式表:
var toRemove = 'style/style.css';
[].forEach.call(document.styleSheets, function(styleSheet) {
if (styleSheet.href && styleSheet.href.substr(-toRemove.length) === toRemove) {
styleSheet.disabled = true;
}
});
这不是您问题的直接答案,但它可能是实现您想要做的事情的更好方法:
如果您正在控制样式表并且想要一种简单的方法来打开和关闭它,那么您可以考虑使用Modernizr使用的相同技巧。而不是在您的样式表中:
.some-class { color: red }
然后在某些情况下删除整个样式表,您可以拥有:
.style-x .some-class { color: red }
然后在您的 HTML 或 JavaScript 中,您可以将“style-x”类添加到body标签:
<body class="style-x">
[...]
<div class="some-class">red text</div>
[...]
</body>
在 JavaScript 中删除样式只是从 body 标签中删除 class style-x,.className
在纯 JavaScript 或.removeClass()
jQuery 中使用。
这样,您可以在一个连接和缩小的 CSS 文件中拥有许多“样式”,可以独立激活和停用。