我要做的是在锚点中加载一个函数来更改jquery mobile中的页面
以下是简化的HTML:
<div data-role="page" id="oldPage">
<ul>
<li><a href="newPage()">Link 1</a></li>
<li><a href="newPage()">Link 2</a></li>
<li><a href="newPage()">Link 3</a></li>
</ul>
</div>
<div data-role="page" id="newpage">
</div>
这是脚本:
function newPage() {
$.mobile.changePage('#newpage');
}
但是当我点击链接时,我收到消息“错误加载页面”。如何通过单击链接加载功能以更改到此新页面?
答案 0 :(得分:1)
这将是href="javascript:newPage()"
,但我不推荐
而是考虑
<div data-role="page" id="oldPage">
<ul>
<li><a href="#page1" id="someId1">Link 1</a></li>
<li><a href="#page2" id="someId2">Link 2</a></li>
<li><a href="#page3" id="someId3">Link 3</a></li>
</ul>
</div>
<div data-role="page" id="newpage">
</div>
$(function() {
$("#oldPage a").on("click",function() {
$.mobile.changePage($(this).attr("href"));
});
});
我猜你的意思
$(function() {
$("#oldPage a").on("click",function() {
$("#oldPage").load($(this).attr("href"));
});
});
答案 1 :(得分:0)
我认为你做错了而不是href你应该使用像
这样的onclick事件<li><a onclick="newPage()" href="#">Link 1</a></li>
coz href基本上是用于加载或更改页面,也是在函数内部preventDefault()
的链接,这样就不会执行单独的函数而不是链接。