jQuery Mobile1.3.1で「aタグ」のページ内でのアンカーの機能をリンクを使用します。(成功しました)
【準備】
1.「jQuery Mobile1.3.1の使用方法(画像が必要な場合)」の手順の通り、jQuery Mobileに必要なファイルを配置しておきます。
【手順1】
1.HTMLファイル「index.html」(任意)を作成。
2.「index.html」を以下の様に入力。
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="jquery.mobile-1.3.1.min.css" />
</head>
<body>
<a href="#aaa" class="anchor">移動</a><br/ >
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
<div id="aaa">ここに移動したい!</a><br/ >
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
<script src="jquery-1.9.1.min.js"></script>
<script src="jquery.mobile-1.3.1.min.js"></script>
<script type="text/javascript">
$(document).on('click', 'a.anchor', function(e){
e.preventDefault();
var y = $($(this).attr('href')).offset().top;
$.mobile.silentScroll(y);
});
</script>
</body>
</html>
【手順2】
1.ブラウザで「index.html」を開き、以下の様に表示されれば成功です。
【結論】
jQuery Mobileでは#を使用したページ内へのアンカーリンクは通常では出来ませんでした。
ですので、以下の手順でページ内アンカーを実現する方法があるようです。
1.リンクの「aタグ」に「class="anchor"」を指定。
2.リンクの「aタグ」の「href属性」には#+飛び先のIDを指定。(上記の例はhref="#aaa")
3.リンクの飛び先のタグにIDを指定。(上記の例はdivタグにid="aaa")
4.jQuery・jQuery Mobileロード後に、以下のjQueryを記載。
<script type="text/javascript">
$(document).on('click', 'a.anchor', function(e){
e.preventDefault();
var y = $($(this).attr('href')).offset().top;
$.mobile.silentScroll(y);
});
</script>
以上です。


0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。