javascript - 禁用 CSS 链接的时机

标签 javascript jquery html css

老读者,第一次海报。

我需要禁用外部 CSS 样式表,并计划使用此线程中描述的技术。

Removing or replacing a stylesheet (a <link>) with JavaScript/jQuery

我的问题是,“早”到什么程度才安全?我认为只要禁用链接的脚本在 HTML 中位于较低位置,CSS 链接(尽管不一定是外部样式表的内容)就已经在 DOM 中了。

但是“其他人”说情况并非如此,为了避免可能的竞争条件,您不应该在“document.ready”之前禁用 CSS。 (但是,如果您等到 document.ready,内容就会“轻拂”到具有旧样式的页面上。)

换句话说,这段代码有风险吗?

<head>
<title>Example</title>
<link rel="stylesheet" href="/Common/css/default.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
jQuery('link[rel=stylesheet]').prop('disabled', true);
</script>
</head>

最佳答案

我会尽快完成,而不是在文档加载后完成。闪烁可能比在页面样式呈现后更改样式更好。

$('link[rel~="stylesheet"]').prop('disabled', true);

关于javascript - 禁用 CSS 链接的时机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28769567/

相关文章:

javascript - jQuery 搜索为 h6 标签设置 HTML,如果为空则删除并更新源变量

html - MaterializeCSS 行中的居中对齐元素

javascript - 带有 firefox/IE 的粘性表格标题

javascript - 我如何在 Javascript 和 Django 中执行此操作?

php - jquery ajax更新mysql表

javascript - 如何使用 DOM 可用的所有输出来迭代 JavaScript for 循环

jquery - CakePHP + ajaxForm - 加载 View 的一部分

html - 阿拉伯字符和拉丁字符混淆

javascript - 同一页面上有多个 scriptcam.js,相机无法加载/显示和拍照

javascript - 记录事件 ID