我花了5个小时试图使用jQuery Mobile来显示加载消息。相反,我得到了:
未捕获的TypeError:对象#<对象>没有方法'加载'
这是我的代码:
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script>
<script type="text/javascript">
$.mobile.loading("show");
</script>
以下是当前代码:
<head>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.css" />
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script>
<script type="text/javascript">
$.mobile.showPageLoadingMsg();
</script>
</head>
答案 0 :(得分:2)
您遇到的异常是由于方法引用不准确,如错误中所述:
未捕获的TypeError:对象#没有方法'loading'
在1.2中添加了loading()
方法,但您使用的是1.1.1,这就是为什么它声明它没有loading
方法。
显示或隐藏可通过配置的页面加载消息 $ .mobile.loader原型选项,如小部件文档或 可以通过params对象来控制。
用法:
//cue the page loader
$.mobile.loading( 'show' );
//use theme swatch "b", a custom message, and no spinner
$.mobile.loading( 'show', { theme: "b", text: "foo", textonly: true });
您应该为您的版本使用的方法是showPageLoadingMsg()
。
用法:
//cue the page loader
$.mobile.loadingMessage = 'Loading...Please wait';
$.mobile.showPageLoadingMsg();
//use theme swatch "b", a custom message, and no spinner
$.mobile.showPageLoadingMsg("b", "This is only a test", true);
答案 1 :(得分:0)
您使用jquery.mobile-1.1.1.min.js。不支持jQuery mobile 1.1.1
$.mobile.loading("show");
这个方法在jQuery mobile 1.2.0中。
支持
$.mobile.showPageLoadingMsg();
您可以在 mobileinit 方法中配置loadMessage。
EX:
$.mobile.loadingMessage = "Loading Message";
$.mobile.loadingMessageTextVisible = true;
$.mobile.loadingMessageTheme="a";
我有同样的问题,最后我找到了。
答案 2 :(得分:-1)
最后我找到了解决方案
它不能直接从简单的javascript函数调用,我需要将它与页面一起使用
$("#Step1").live("pageshow", function () {
$.mobile.showPageLoadingMsg();
});