我有一个 jQuery UI 按钮,我想动态更改它的文本。当我这样做时,我在 Chrome 和 IE 上没有问题:
$('#myButton').find('span:first').text("myText");
但是,Firefox 似乎以不同的方式处理按钮,并且没有为我的按钮找到跨度。所以当在 Firefox 上时,我会这样做:
$('#myButton').text("myText");
它在大多数情况下都有效,但有时,当我尝试更改其文本时,我的按钮还没有准备好,或者可能有另一个原因阻止 Firefox 正确加载按钮,我最终得到一个这样的按钮:(我让您省去 jQuery UI 添加的众多属性)
<button id="myButton">myText</button>
而不是:
<button id="myButton">
<span class="ui-button-text">myText</span>
</button>
因此我的按钮样式出错了,就像在这些线程中一样: Jquery UI button issue和 jQuery UI: changed button text distors button sizing
我也尝试过这个,遵循这里找到的一些建议:
$("#myButton).button('option', 'label', 'myText');
但我得到一个错误,说我不能在初始化之前调用按钮方法。
由于 Chrome 和 IE 每次都能完美地处理这个问题,这令人愤怒。有没有办法获得一致的行为?
谢谢你。