我正在编写一个专为平板电脑设计的应用程序,每次选择表中的一行时我都需要加载数据。选择一行后,我想将微调器放置在将加载新数据的 div 上。
这可能吗,还是我需要阻止整个页面或引入 BlockUI 之类的东西?
我正在使用 jQuery Mobile 1.2.0 Alpha。
谢谢!
我正在编写一个专为平板电脑设计的应用程序,每次选择表中的一行时我都需要加载数据。选择一行后,我想将微调器放置在将加载新数据的 div 上。
这可能吗,还是我需要阻止整个页面或引入 BlockUI 之类的东西?
我正在使用 jQuery Mobile 1.2.0 Alpha。
谢谢!
像这样 ???
jQuery:
function loadData(id) {
var btnID = id;
$.ajax({
url: "http://fiddle.jshell.net/akhurshid/g2tD5/show/",
beforeSend: function() {
$('.loader').html('<img src="http://cdn.nirmaltv.com/images/generatorphp-thumb.gif" alt="Wait" />');
},
success: function(data) {
$('.loader').fadeTo('fast','0.0');
$('#' + btnID).fadeTo('fast','0.0');
var htmlData = $('.result').html(data).hide().css('opacity','0');
$(htmlData).fadeTo('fast','1.0');
}
});
}
HTML:
<div id="wrapper">
<div class="loader"></div>
<div class="result"></div>
<button id="load-btn" onclick="loadData(this.id);">Load Data Here</button>
</div>
CSS:
#wrapper{
width: 90%;
margin: 20px auto;
padding: 20px;
overflow: hidden;
border: 1px solid #777;
background: #ccc;
}
.loader{
width: 64px;
height: 64px;
top: 50%;
left: 50%;
position: absolute;
z-index: 9999;
display: block;
}
$.mobile.loadingMessageTextVisible = true;
$.mobile.showPageLoadingMsg("b", "please wait...");
这行得通吗?
例子:
JS
// show the loader
$.mobile.showPageLoadingMsg();
// Move the loader left 30 pixels
$('div.ui-loader').attr('style','left:30px;');
HTML
<div data-role="page" id="placeholder-page">
</div>