這是基於由姜毅及以上Panayiotis提供的信息,以及jquery ui button sample code:
當我在遷移較早JSP應用程序必須與每個按鈕圖像的工具欄,我想有內部的圖像按鈕聲明本身,而不是爲每個工具欄按鈕創建一個單獨的類。
<div id="toolbarDocs" class="tableCaptionBox">
<strong>Checked Item Actions: </strong>
<button id="btnOpenDocs" data-img="<s:url value="/images/multi.png"/>">Open Documents</button>
<button id="btnEmailDocs" data-img="<s:url value="/images/email.png"/>">Attach to Email</button>
</div>
當然,還有更多的按鈕比上述兩個更多。上述s個標籤是一個Struts2的標籤,但你可以只用任何URL
<button id="btnOpenDocs" data-img="/images/multi.png">Open Documents</button>
以下腳本查找從按鈕標記的屬性數據IMG,然後設置一個作爲背景圖片更換按鈕。
它暫時設置ui-icon-bullet(任意現有的樣式),然後稍後進行更改。
該類定義了臨時樣式(如果您打算使用這個選項卡,以便您的頁面的其餘部分不受影響,最好爲特定工具欄添加更多選擇器)。
button.ui-button .ui-icon {
background-image: url(blank.png);
width: 0;
height: 0;
}
和下面的JavaScript:實際的圖像將通過下面的JavaScript來代替
$(document).ready(function() {
$("#toolbarDocs button").each(
function() {
$(this).button(
{ text: $(this).attr('data-img').length === 0? true: false, // display label for no image
icons: { primary: "ui-icon-bullet" }
}).css('background-image', "url(" + $(this).attr('data-img') +")")
.css('background-repeat', 'no-repeat');
});
});
這對我有效。注意你也可以使用精靈。 – 2011-06-10 02:05:58
@RobOsborne你如何使用精靈?它不適用於我 – 2013-08-27 16:48:44
謝謝!這是記錄在jquery-ui文檔?我無法在任何地方找到它。 – shimizu 2017-07-10 16:43:07