css - 如何从 DOM 中删除 css

标签 css

我有一个允许用户在运行时更改主题的应用。

在加载新的 CSS 之前,这段代码删除了旧的 CSS:

jQuery('head > link').each(function () {
            if (this.href.includes('styles/kendo.')) {
                DOM.removeNode(this);
            }
        });

这对我来说看起来不错,但是当它运行时,有些东西坏了(不确定是什么),后来 CSS 无法正确加载。

如果我注释掉这段代码,那么 CSS 就可以正常加载了。对我来说没有意义。

也许有一种完全不同的方法可以更好地从 DOM 中删除 CSS?

最佳答案

代码中的一切看起来都很好,直到

jQuery('head > link').each(function () {
            if (this.href.includes('styles/kendo.')) {

下一行 DOM.removeNode(this); 应该删除 HTML 元素,即 this 使用 DOM.removeNode 方法,它不是内置对象,因此我们不知道它是如何工作的,您应用程序中的库可能有该对象,因此您可能需要查看其文档。

如果我们的任务是从 DOM 中删除那个特定的 HTML 链接元素,我们可以使用 jQuery $.remove() 方法,

jQuery('head > link').each(function () {
            if (this.href.includes('styles/kendo.')) {
                $( this ).remove();

关于css - 如何从 DOM 中删除 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39422840/

相关文章:

html - 另一个网格的单元格内的网格容器

html - 页面中间两个div一个在另一个下面

javascript - 带 CSS 动画的 Knockout 输入验证

javascript - 将动画 Jquery 侧导航转换为 Vanilla JS

css - 设置Border-right全屏高度

javascript - Phonegap/Cordova CSS 无法正常工作

javascript - 有条件地设置 knockout.js foreach 循环中最后一个元素的样式

css - React MUI v5 Card 背景是白色背景,Alpha 为 5%,我不知道它来自哪里

javascript - d3 circle .on ("click") 事件未触发

jquery - JS中的纺车,如何在随机选择的切片的中心自动停止旋转