使用$(el).addClass('example');但是不要't增加负载

Use $(el).addClass('example'); but don't add on load?

本文关键字:增加 负载 使用 el addClass example      更新时间:2023-09-26

对不起,我知道标题可能很奇怪。基本上,我有下面的代码:

jQuery(document).ready(function($) {
  $('body.single article.project').addClass('grayscale');
});

问题是,在加载时添加grayscale的类会初始化与该类对应的插件,这是我不想做的。我想添加该类,但不初始化插件。

我是否必须在加载后几毫秒以某种方式添加该类?我该怎么做?

如果插件有一个自初始化脚本,那么它将在dom就绪处理程序中运行。因此,一种解决方案是使用计时器将addClass()延迟几毫秒

jQuery(function ($) {
    setTimeout(function () {
        $('body.single article.project').addClass('grayscale');
    }, 100)
});

使用setTimeout,您可以在页面加载后(例如100毫秒)添加所需的类:

$(window).load(function(){
var t=setTimeout(
function(){$("body.single article.project").addClass("grayscale");}, 100)
})