我敢肯定这不是最优雅的方式,而是更改了您的标记(将类“a”和“b”添加到您的 li - 与无线电元素的 id 基本相同的值。包含)我们开始:
$('label').click(function(){
// if the radio is already checked
if ($('#'+$(this).attr('for')).attr('checked') == 'checked') {
$('ul li').removeClass('selected'); // remove previous selected items
$('.'+$(this).attr('for')).addClass('selected'); // add new selected item
} else {
// radio not checked
$('#'+$(this).attr('for')).attr('checked','checked'); // check radio (altough this should be automatic, without js
$('ul li').removeClass('selected'); // clear previous selected items
$('.'+$(this).attr('for')).addClass('selected'); // add new selected item
}
});
为了速度,我建议在 ul 中添加一个 id,比如“list”,然后将代码更改为
$('label').click(function(){
至
$('#list label').click(function(){
另外,来自:
$('ul li').removeClass('selected'); // remove previous selected items
至
$('#list li').removeClass('selected'); // remove previous selected items
祝你好运!