如何使用Jquery从带有通配符的所有元素中删除类

如何使用Jquery从带有通配符的所有元素中删除类,jquery,html,css,jquery-mobile,Jquery,Html,Css,Jquery Mobile,我正在制作一个反应迅速的网站。对于移动版,我使用jQuery mobile,它向我的HTML中添加了很多类。我不希望这些类用于桌面版本 所有jQuery移动类的前缀都是“ui”。虽然我可以使用.removeClass(“”),但我必须为每个类和每个HTML元素使用一个单独的.removeClass(“”) 如何使用通配符方法删除所有以ui开头的类,而不管它们位于哪个元素上 我发现了一个名为的插件,它应该可以做到这一点,但我似乎无法让它工作。我严格按照说明操作,但它不会删除这些类。我已经建立了一个

我正在制作一个反应迅速的网站。对于移动版,我使用jQuery mobile,它向我的HTML中添加了很多类。我不希望这些类用于桌面版本

所有jQuery移动类的前缀都是“ui”。虽然我可以使用
.removeClass(“”)
,但我必须为每个类和每个HTML元素使用一个单独的
.removeClass(“”)

如何使用通配符方法删除所有以ui开头的类,而不管它们位于哪个元素上


我发现了一个名为的插件,它应该可以做到这一点,但我似乎无法让它工作。我严格按照说明操作,但它不会删除这些类。我已经建立了一个新的组织

在你的小提琴中,
您的锚定标签的id为:

在您的小提琴中,
你的锚标签有ID:<代码> <强> > /p> < p>这应该删除任何在元素上从<代码> UI < /代码>开始的类,这不是很有效,你应该考虑传递一个更具体的选择器。 有时候,jQuery UI/mobile会在加载DOM后添加类,所以在文档准备就绪后只运行一次并不保证
UI
类不会再次显示:

$('*').attr('class', function(i, classes) {
    return classes.replace(/\sui[^\s]*|^ui[^\s]*/gi, '');
});


<>我会认真考虑另一种方法,比如,如果网站不是“移动版本”之类的,就不包括库。

,在任何元素上都应该删除任何一个从UI>代码>开始的类,这不是很有效,你应该考虑传递一个更具体的选择器。p> 有时候,jQuery UI/mobile会在加载DOM后添加类,所以在文档准备就绪后只运行一次并不保证
UI
类不会再次显示:

$('*').attr('class', function(i, classes) {
    return classes.replace(/\sui[^\s]*|^ui[^\s]*/gi, '');
});


<>我会认真考虑另一种方法,比如不包括图书馆,如果网站不是移动版本等。

< P>从UI开始所有的类,你可以用这个。p>
您可以在

上阅读更多内容,以获取所有从UI开始的类。您可以使用此选项


如果要从包含以
UI
开头的类的所有元素中删除所有类,可以在

上阅读更多内容:

$('[class^=UI]').removeClass();

如果要从具有以
UI
开头的类的所有元素中删除所有类,请执行以下操作:

$('[class^=UI]').removeClass();

@虫族这是关于他的小提琴。哎呀,现在我明白你的意思了:-史坦克斯!真不敢相信我犯了这么简单的错误@虫族这是关于他的小提琴。哎呀,现在我明白你的意思了:-史坦克斯!真不敢相信我犯了这么简单的错误!您使用什么方法来确定是否删除类?为什么不使用相同的方法重定向桌面/移动版本?或者更好地解释一下,在适当的位置放置类的根本问题是什么?您使用什么方法来确定是否删除类?为什么不使用相同的方法重定向桌面/移动版本?或者更好地解释放置类的根本问题是什么,这将如何删除类?@adeneo this$(“[class^=“UI”]”)选择与通配符匹配的所有元素。之后可以使用.removeClass(),或者使用.prop(“class”,“something”)将新值设置为class。实际上,类将是一个属性,而不是属性,因此
attr()
将是正确的jQuery方法,而不是
prop()
。我确实意识到,这会选择任何以
ui
开头的类的元素,但您将使用
removeClass()
删除所有类,而不仅仅是那些以
ui
开头的类,但问题是,这是否是OP所追求的。我将其理解为想要删除任何元素上以
ui
开头的任何类,这将完成,包括元素可能拥有的任何其他类?这将如何删除该类?@adeneo this$(“[class^=“ui”]”)选择与通配符匹配的所有元素。之后可以使用.removeClass(),或者使用.prop(“class”,“something”)将新值设置为class。实际上,类将是一个属性,而不是属性,因此
attr()
将是正确的jQuery方法,而不是
prop()
。我确实意识到,这会选择任何以
ui
开头的类的元素,但您将使用
removeClass()
删除所有类,而不仅仅是那些以
ui
开头的类,但问题是,这是否是OP所追求的。我把它理解为想要删除任何元素上以
ui
开头的任何类,这可以做到,包括元素可能拥有的任何其他类?