gpt4 book ai didi

jquery - 删除某个类之后的所有类

转载 作者:行者123 更新时间:2023-12-01 00:52:56 24 4
gpt4 key购买 nike

我有一个

< div id="thisdiv" class="class1 class2 class3 class4 class5"> text < /div>

I need to be able to delete all classes after class3 with jQuery.

something like

$('#thisdiv').removeClass(all after class3);

或者

$('#thisdiv').attr('class', all from class1 to class3);

请问我该怎么做?

最佳答案

您可以尝试以下操作,但您的类的顺序可能与 HTML 源代码中显示的顺序不同:

$('#thisdiv').attr('class', function(i, v)
{
var classes = v.split(' '),
position = $.inArray('class3', classes);

return classes.slice(0, position + 1).join(' ');
});

这是 fiddle :http://jsfiddle.net/FNUK2/

<小时/>

更简洁的方法是 just slice the string itself :

$('#thisdiv').attr('class', function(i, v)
{
return v.substr(0, v.indexOf('class3') + 6);
});

但我发现使用数组更容易。

<小时/>

如果你想在 jQuery 链中使用它,你必须首先将它添加到 jQuery 的原型(prototype)中:

$.fn.removeClassesAfter = function(className)
{
return this.each(function()
{
$(this).attr('class', function(i, v)
{
var classes = v.split(' '),
position = $.inArray(className, classes);

return position == -1 ? v : classes.slice(0, position + 1).join(' ');
});
});
};

这是 fiddle :http://jsfiddle.net/FNUK2/11/

关于jquery - 删除某个类之后的所有类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11279835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com