如何移除特定jQuery UI Spinner的ui-corner-tr与ui-corner-br类?
解决jQuery UI Spinner移除指定圆角类的问题
核心问题分析
你之前的尝试存在两个关键错误:
removeClass()参数格式错误:你传入的.ui-corner-tr是CSS选择器语法,但removeClass()仅需传入纯类名字符串(不带点号)。- 选中元素错误:jQuery UI Spinner默认会把
ui-corner-tr/ui-corner-br圆角类添加在内部的上下按钮元素上,而非你选中的#test或.testSpinner主容器。
正确解决方案
先通过浏览器开发者工具(F12)确认Spinner的DOM结构,通常它的结构如下:
<div id="test" class="testSpinner ui-spinner"> <input type="text" class="ui-spinner-input"> <a class="ui-spinner-up ui-corner-tr" role="button"></a> <a class="ui-spinner-down ui-corner-br" role="button"></a> </div>
针对该结构,使用以下代码移除目标类:
// 移除右上角按钮的圆角类 $('#test .ui-spinner-up').removeClass('ui-corner-tr'); // 移除右下角按钮的圆角类 $('#test .ui-spinner-down').removeClass('ui-corner-br');
如果需要适配所有带testSpinner类的Spinner,可改为通用写法:
$('.testSpinner .ui-spinner-up').removeClass('ui-corner-tr'); $('.testSpinner .ui-spinner-down').removeClass('ui-corner-br');
验证方法
执行代码后,再次用开发者工具检查按钮元素,确认ui-corner-tr和ui-corner-br类已被移除即可。
内容的提问来源于stack exchange,提问作者JoMojo
相关产品推荐
相关产品推荐

