首先,我知道這不是「完全」你命令/要求,我開始像你一樣,然後我想顯示一些「罐裝」的東西爲ajax調用以及定時的消息在它的不同消息,因此我想出了這個:(注:對於你的改變errorMessage.show();
到errorMessage.fadein();
)
<div class="myErrorContainer">
<div class="myErrorStatus ajaxLoading " id="myErrorStatus">
<span id="Errorstatus" class="ui-state-error-text myErrorStatusText"></span>
</div>
</div>
表現出一點ajax的裝載使用CSS
.ajaxLoading
{
width: 100%;
background-image: url("../Images/ajax-loader.indicator.gif");
background-repeat: no-repeat;
background-position: left middle;
}
.myErrorStatus
{
text-align: center;
width: 100%;
}
.myErrorStatusText
{
color: #FF0000;
font-weight: bold;
}
/* show message for interval */
var saveMessageText = 'Saving...';
function ShowStatus(saveMessage, message, timeInMilliseconds)
{
var errorMessage = $("#Errorstatus");
if (saveMessage)
{
errorMessage.show();
var myInterval = window.setInterval(function()
{
message = message + '...';
errorMessage.text(message);
errorMessage.show();
}, 1000);
window.setTimeout(function()
{
clearInterval(myInterval);
errorMessage.hide();
}, timeInMilliseconds);
}
else
{
errorMessage.text(message);
errorMessage.show();
window.setTimeout('$("#Errorstatus").hide()', timeInMilliseconds);
};
};
然後(如果你想要的),我把這個在所有ajax調用上顯示:(其中myUserName javascript var iable擁有用戶名)
/*阿賈克斯方法*/
/* show the message that data is loading on every ajax call */
var loadingMessage = 'Please wait loading data for ' + myUserName;
$(function()
{
$("#Errorstatus")
.bind("ajaxSend", function()
{
$(this).text(loadingMessage);
$(this).show();
})
.bind("ajaxComplete", function()
{
$(this).hide();
});
});
然後,你可以用它像這樣:
ShowStatus(true, 'Update Failed with unknown Error', 4000);
注意:如果你不想ajax的背景做指標你可以做一個$('#myErrorStatus').removeClass('ajaxloading');
然後用$('#myErrorStatus').addClass('ajaxloading');
稍後替換它。
+1總是很高興有創意,有時擴大我們的答案! – BoltClock 2010-06-02 18:48:28
尼克尼克,我可以加強我的消息與一些愛從這:) – 2010-06-02 19:16:56