3
​&lt;button id="test" class="example whatever">Show classes</button>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

$('button').click(function(){
  var classes = $(this).attr('class');
  alert(classes);
});​

上面的代码返回class属性的内容。我怎样才能让它返回格式化的类?

例如,在这种情况下,我希望变量classes的值是 ,.example.whatever而不是example whatever

我已经搜索过,似乎提供的唯一解决方案是我上面演示的代码。

4

2 回答 2

6

我对此真的很不安,因为用句点替换空格将给出堆叠类的表示,当类并没有真正堆叠时,但是你去:

// class="foo bar fiz buz" -> .foo.bar.fiz.buz
this.className.replace( /^|\s/g , "." );

演示:http: //jsbin.com/avitef/edit#javascript,html

于 2012-04-29T03:58:27.107 回答
1
$('button').click(function(){
  var classes = $(this).attr('class');
  alert("." + classes.split(" ").join(".") );
});

在这里摆弄:http: //jsfiddle.net/wxDEh/3/

于 2012-04-29T03:59:10.883 回答