我在 jQuery mobile 中有一个按钮:
<a href="#" data-role="button" id="show_edit" data-theme="d" data-corners="true" data-shadow="true" data-iconshadow="true" data-wrapperels="span" class="ui-btn ui-corner-left ui-btn-up-a ui-btn-up-d"><span class="ui-btn-inner ui-corner-left"><span class="ui-btn-text">Edit</span></span></a>
如果我在控制台中执行此操作,它可以工作(按钮颜色更改):
$('#show_edit').removeClass('ui-btn-up-d').addClass('ui-btn-up-a');
但是,如果我确实包含在页面上的点击处理程序中,那么“ui-btn-up-d”类不会被删除吗?
$('#show_edit').on('click', function() {
$(this).removeClass('ui-btn-up-d').addClass('ui-btn-up-a');
});
编辑:我认为下面的答案是正确的,但是这是另一种方式,它也在改变数据主题:
$('#show_edit').attr('data-theme', 'a').attr('class', 'ui-btn ui-corner-left ui-btn-up-a');