如果订单号不等于-1
,我正在使用以下事件并尝试隐藏按钮 $('#ordPage1').live('pageshow',function(event){
//$('#btnRegisterVisit').hide();
//alert(sessionStorage.OrderNo);
if(sessionStorage.OrderNo!= -1){
$('#btnRegisterVisit').hide();
//alert("test");
}
else{
$('#btnRegisterVisit').show();
}
});
但我的问题是当页面加载时,按钮显示然后立即消失。有没有办法不显示按钮。按钮显示在UI上然后消失可能会导致问题,因为用户可能会单击它。
有人能帮助我吗?提前致谢。
答案 0 :(得分:1)
你能把#btnRegisterVisit { display: none; }
放在CSS文件中吗?
答案 1 :(得分:1)
尝试使用pageinit
$(document).bind('pageinit', function(){
if(sessionStorage.OrderNo!= -1){
$('#btnRegisterVisit').hide();
//alert("test");
}
else{
$('#btnRegisterVisit').show();
}
});
来自http://jquerymobile.com/test/docs/api/events.html
重要提示:使用$(document).bind('pageinit'),而不是$(document).ready()
你在jQuery中学到的第一件事就是在$(document).ready()函数中调用代码,这样一旦加载了DOM,一切都会执行。但是,在jQuery Mobile中,Ajax用于在导航时将每个页面的内容加载到DOM中,而DOM ready处理程序仅针对第一个页面执行。要在加载和创建新页面时执行代码,您可以绑定到pageinit事件。此事件在本页底部详细说明。
如果您已尝试pageinit
但它无效。您也可以尝试使用pagebeforeshow
$('#ordPage1').live('pagebeforeshow',function(event){
//$('#btnRegisterVisit').hide();
//alert(sessionStorage.OrderNo);
if(sessionStorage.OrderNo != -1){
$('#btnRegisterVisit').hide();
//alert("test");
}
else{
$('#btnRegisterVisit').show();
}
});
pagebeforeshow - 在实际过渡动画开始之前,我们正在转换到“toPage”上的触发器。此事件的回调将接收数据对象作为其第二个arg。
答案 2 :(得分:0)
<html>
<head>
<style>
span { background:#def3ca; padding:3px; float:left; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<button id="hidr">Hide</button>
<button id="showr">Show</button>
<div>
<span>Once</span> <span>upon</span> <span>a</span>
<span>time</span> <span>there</span> <span>were</span>
<span>three</span> <span>programmers...</span>
</div>
<script>
$("#hidr").click(function () {
$("span:last-child").hide("fast", function () {
// use callee so don't have to name the function
$(this).prev().hide("fast", arguments.callee);
});
});
$("#showr").click(function () {
$("span").show(2000);
});
</script>
</body>
</html>
答案 3 :(得分:0)
看看这个:
重要提示:使用$(document).bind('pageinit'),而不是$(document).ready()
在jQuery Mobile doc上找到
答案 4 :(得分:0)
将它绑定到pagebeforeshow事件。
$('#ordPage1').live('pagebeforeshow',function(event){
//$('#btnRegisterVisit').hide();
//alert(sessionStorage.OrderNo);
if(sessionStorage.OrderNo!= -1){
$('#btnRegisterVisit').hide();
//alert("test");
}
else{
$('#btnRegisterVisit').show();
}
});