changePageの後にターゲットページを更新する方法はありますか?
私は本当に検索しますが、何もうまくいきません。
これはあなた(または他の人)が本当に探しているものかもしれません:
data-ajax="false"
<a href="/" data-ajax="false">
<img id="mainLogo" src="logo.svg" width="215" />
</a>
これにより、ajaxの動作がバイパスされます。
他のドメインを指すリンク、またはrel = "external"、data-ajax = "false"、またはターゲット属性を持つリンクは、Ajaxで読み込まれません。代わりに、これらのリンクにより、アニメーション化されたトランジションなしでページ全体が更新されます。両方の属性(rel="external"とdata-ajax="false")の効果は同じですが、意味が異なります。別のサイトまたはドメインにリンクする場合はrel = "external"を使用する必要がありますが、data-ajax =" false」は、ドメイン内のページがAjax経由で読み込まれないように選択する場合に便利です。セキュリティ上の制限により、フレームワークは常にAjaxの動作から外部ドメインへのリンクを選択します。
次のいずれかの解決策を試してください。
1-使用$(location).attr('href',"your_html.html");
例:
単一ページテンプレートを使用しているので、2つの別々のHTMLファイル(および)に2つのjQuery Mobileページ(#page_1
および)があると仮定します。#page_2
page_1.html
page_2.html
#page_1
(にあるpage_1.html
)から#page_2
(にある)に移動する場合はpage_2.html
、次を使用します。
$(location).attr('href',"page_2.html");
以下の完全な例を確認してください。
- page_1.html
:
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile.structure-1.1.1.min.css" />
<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>
$(function() {
$("#mlink").click(function() {
$(location).attr('href',"page_2.html");
});
$("#mlink_2").click(function() {
$(location).attr('href',"page_1.html");
});
});
</script>
</head>
<body>
<div id="page_1" data-role="page">
<div data-role="content">
PAGE 1<br>
<!-- WHEN CLICKING ON THIS LINK, YOU'LL GO TO #page_2 in page_2.html
WITH PAGE REFRESH -->
<a id="mlink">GO TO PAGE 2</a>
</div>
</div>
</body>
</html>
- page_2.html
:
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile.structure-1.1.1.min.css" />
<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>
$(function() {
$("#mlink").click(function() {
$(location).attr('href',"page_2.html");
});
$("#mlink_2").click(function() {
$(location).attr('href',"page_1.html");
});
});
</script>
</head>
<body>
<div id="page_2" data-role="page">
<div data-role="content">
PAGE 2<br>
<!-- WHEN CLICKING ON THIS LINK, YOU'LL GO TO #page_1 in page_1.html
WITH PAGE REFRESH -->
<a id="mlink_2">GO TO PAGE 1</a>
</div>
</div>
</body>
</html>
2-使用してみてください$.mobile.changePage("your_html.html", { reloadPage: true });
前の例を考慮し、からに移動する#page_1
場合は、メソッドを次#page_2
のように置き換える必要があります。$(location).attr('href',"page_2.html");
$.mobile.changePage("page_2.html", { reloadPage: true });
$.mobile.changePage()
メソッドとそのオプションの詳細についてはreloadPage
、次のリンクを確認してください:http: //jquerymobile.com/demos/1.1.0/docs/api/methods.html