私が経験していることを示すために、次の例を作成しました。
ページ2aボタンを使用してページ1からページ2に移動すると、予想どおりURLは...#page2?id=aになります。
ボタンをクリックしてページ1に戻り、ページ2bに移動すると、URLには「#page2?id = a」と表示されますが、タグには明らかに「#page2?id= b」<a>
のhrefが含まれています。 #page2に到達すると、「#page2?id= b」になります。 $(e.target).attr("data-url")
ここで何が起こっているのかアイデアはありますか?助けてくれてありがとう。
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
<script>
$("#page2").live('pageshow', function(e) {
alert($(e.target).attr("data-url"));
$("#page_text").html("Page 2"+($(e.target).attr("data-url").replace(/.*id=/, "")));
});
</script>
</head>
<body>
<div data-role="page" data-theme="c" id="page1">
<div data-role="content">
<p>Page 1</p>
<a href ="#page2?id=a" data-transition="flip" data-role="button">Page 2a</a>
<a href ="#page2?id=b" data-transition="flip" data-role="button">Page 2b</a>
</div>
</div>
<div data-role="page" data-theme="a" id="page2">
<div data-role="content">
<p id="page_text"></p>
<a href ="#page1" data-transition="flip" data-role="button">Page1</a>
</div>
</div>
</body>
</html>
コードサンプルはjsfiddleにもあります。