我想從這個jQuery Mobile的標記部分刪除「UI-BTN-主動」類:發行附加的onClick處理程序使用jQuery
<a id="btnFree" class="ui-btn ui-btn-icon-top ui-btn-up-a ui-btn-active"
onclick="setStatus('free')" data-icon="alert" data-iconpos="top"
data-role="button" href="#" data-theme="a">
<span class="ui-btn-inner">
<span class="ui-btn-text">Free</span>
<span class="ui-icon ui-icon-shadow ui-icon-check"></span>
</span>
</a>
我用這個作爲的onclick功能,但最後一行不起作用:
function setStatus() {
$("#btnFree").children('span.ui-btn-inner').children('span.ui-icon').removeClass('ui-icon-alert');
$("#btnFree").children('span.ui-btn-inner').children('span.ui-icon').addClass('ui-icon-check');
$("#btnFree").removeClass('ui-btn-active');
}
通過查看Firebug,它似乎沒有改變任何東西。功能中的其他說明正常工作,所以我不知道我錯過了什麼。任何提示?
實際的代碼我寫的是下面的,它得到由JQM翻譯成以上:
<div data-role="navbar" id="nvb1">
<ul>
<li><a href='#' data-role="button" id="btnFree" data-iconpos="top" data-icon="alert" onClick="setStatus('free')">Free</a></li>
<li><a href='#' data-role="button" id="btnBusy" data-iconpos="top" onClick="setStatus('busy')">Busy</a></li>
</ul>
</div>
什麼實際上,我試圖完成,是防止在導航欄點擊的按鈕變爲高亮顯示。
如果這是您的實際代碼,您的span標籤格式錯誤(缺少結束標籤)。這可能會導致你所看到的行爲。 – 2012-03-06 03:30:01
對不起,補充了缺失的部分。 – chris 2012-03-06 03:42:17
確保沒有任何具有相同ID的其他元素。 – Jeff 2012-03-06 03:44:24