如何将课程应用于所有按钮?

Was*_*ikh 0 javascript css forms jquery internet-explorer-6

在我的一个项目中,我习惯input[type="button"]将样式应用于所有按钮.它在除Internet Explorer 6之外的所有浏览器中都可以正常工作.它不会设置按钮的样式.

有没有解决方案,比如为按钮创建一些类并将其应用于所有按钮?

我想将该类应用于所有按钮,但不是手动.我认为可以使用jQuery,你能帮我解决这个问题吗?

rah*_*hul 5

$(":button").addClass("yourclassname");
Run Code Online (Sandbox Code Playgroud)

这匹配按钮元素和类型按钮的输入元素,并为它们添加类.

  • 对不起垃圾评论.我现在看一下源代码,`:something`过滤器以这样一种通用的方式实现,它只是在初始化之后的阶段通过`jQuery.expr.something`函数运行冒号之后的任何东西.元素已被选中,因此它将选择所有元素.但考虑到人们使用`:text`等而不是`input:text`的频率,我认为值得建议一个特例优化... (3认同)
  • 但这些很容易与CSS匹配.我宁愿制作jQuery` $("button,input:button")`如果我真的想把这个类添加到所有按钮中.它比检查页面上的每个元素更有效. (2认同)

Bli*_*ixt 5

我通常不喜欢使用JavaScript,所以我添加class="text"<input>文本类型class="button"<input>元素,对于按钮类型的元素,依此类推.然后我可以匹配他们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...
Run Code Online (Sandbox Code Playgroud)