jquery 如何应用一个类到所有按钮?

cgyqldqp  于 2023-01-04  发布在  jQuery
关注(0)|答案(6)|浏览(100)

在我的一个项目中,我使用input[type="button"]为所有按钮应用样式,它在除InternetExplorer6之外的所有浏览器上都能正常工作,但它不为按钮设置样式。
是否有解决方案,比如为按钮创建一些类并将其应用于所有按钮?
我想把这个类应用到所有的按钮上,但不是手动的。我想可以用jQuery来实现,你能帮我吗?

cwtwac6a

cwtwac6a1#

我通常不喜欢使用JavaScript来实现这一点,所以我为文本类型的<input>元素添加了class="text",为按钮类型的<input>元素添加了class="button",等等,然后我可以将它们与input.text等进行匹配。
虽然您不想手动完成,但我认为这是更好的做法。如果您仍然想使用jQuery完成,请按以下方式操作:

$('input:button').addClass('button');
// Or to include <button> elements:
$('button, input:button').addClass('button');

// Text inputs:
$('input:text').addClass('text');
// And so on...
3yhwsihp

3yhwsihp2#

$(":button").addClass("yourclassname");

这将匹配所有button类型的button元素和input元素,并向它们添加类。

8e2ybdfx

8e2ybdfx3#

您试过$(":button")吗?

jq6vz3qz

jq6vz3qz4#

在IE6中没有javascript就不能自动完成,下面是使用jQuery的方法

$(":button").addClass( "something" );
ia2d9nvy

ia2d9nvy5#

我不会使用jQuery,除非您在其他地方需要它,因为为这样一个简单的任务加载一个库或框架似乎有点过头了。
I.E.6不理解CSS属性选择器,正确的,看起来Javascript是唯一的方法。
也许你可以试试下面的代码:

Buttons=Parent.getElementsByTagName("input"); // "Parent" could be "document" or the Id. of a form, fieldset, div etc.
Button=0;
while(Button<Buttons.length){
    if(Buttons[Button].getAttribute("type")=="button"){
        Buttons[Button].className="Whatever_Style_We_Want";
    }
    Button++;
};

我还没有试过或者测试过,但是这个代码片段是可以玩的,它甚至可以直接工作!

zzoitvuj

zzoitvuj6#

这可以将所有样式应用于JavaScript中的按钮

const buttons = document.getElementsByTagName('button');
    
    for(let i = 0; i < buttons.length; i++) {
        buttons[i].classList.add("my-button-class")
        buttons[i].classList.add("another-button-class")
    }

相关问题