###前提・実現したいこと
Monaca、及びonsen uiを利用して、アプリ開発をしております。
アプリ内では2つのカテゴリーがあり、それぞれのカテゴリー別に機能を分けてます。
そのため、画面の下部にタブを設置し、カテゴリー毎に表示したいと考えております。
なお、それぞれのページから各機能にアクセス(画面遷移)する形となります。
###発生している問題・エラーメッセージ
元々一つのページから各機能の画面に遷移させていたのですが、今回タブを入れたことにより、画面遷移がうまくいかずに立ち往生しております。
具体的には、タブでの画面遷移はできるのですが、ページ内の画面遷移ボタンが効かない状況(要素をタップしてもpushPageが機能しない状態)です。
tabbarを削除すると機能するので、tabbarが問題と思われるのですが、どう修正すべきかよく分からない状況です。
修正方法をご教示頂ければ幸いです。
###該当のソースコード
html
1<!DOCTYPE HTML> 2<html> 3<head> 4 <meta charset="UTF-8"> 5 <script src="components/loader.js"></script> 6 <link rel="stylesheet" href="components/loader.css"> 7 <link rel="stylesheet" href="css/style.css"> 8 <script src="js/demo.js"></script> 9</head> 10<body> 11 <ons-navigator page="page1.html" var="app.navi"></ons-navigator> 12 13 <ons-page> 14 <ons-tabbar var="tabbar"> 15 <ons-tab page="page1.html" label="page1" icon="ion-home" active="true"></ons-tab> 16 <ons-tab page="page2.html" label="page2" icon="ion-briefcase"></ons-tab> 17 <ons-tab page="page3.html" label="page3" icon="ion-ios-cog"></ons-tab> 18 </ons-tabbar> 19 </ons-page> 20 21 <ons-template id="page1.html"> 22 <ons-page page="page1"> 23 <ons-toolbar> 24 <div class="center">Page1</div> 25 </ons-toolbar> 26 27 <ons-list> 28 <ons-list-item modifier="chevron" class="item" id="page1_1"> 29 <ons-row> 30 <ons-col class="title"> 31 <header> 32 <span class="item-title">Page1_1</span> 33 </header> 34 </ons-col> 35 </ons-row> 36 </ons-list-item> 37 38 <ons-list-item modifier="chevron" class="item" id="page1_2"> 39 <ons-row> 40 <ons-col class="title"> 41 <header> 42 <span class="item-title">Page1_2</span> 43 </header> 44 </ons-col> 45 </ons-row> 46 </ons-list-item> 47 </ons-list> 48 </ons-page> 49 </ons-template> 50 51 <ons-template id="page2.html"> 52 <ons-page id="page2"> 53 <ons-toolbar> 54 <div class="center">Page2</div> 55 </ons-toolbar> 56 57 <ons-list> 58 <ons-list-item modifier="chevron" class="item" id="page2_1"> 59 <ons-row> 60 <ons-col class="title"> 61 <header> 62 <span class="item-title">Page2_1</span> 63 </header> 64 </ons-col> 65 </ons-row> 66 </ons-list-item> 67 </ons-list> 68 </ons-page> 69 </ons-template> 70 71 <ons-template id="page3.html"> 72 <ons-page id="page3"> 73 <ons-toolbar> 74 <div class="center">Page3</div> 75 </ons-toolbar> 76 77 <ons-list> 78 <ons-list-item modifier="chevron" class="item" id="page3_1"> 79 <ons-row> 80 <ons-col class="title"> 81 <header> 82 <span class="item-title">Page3_1</span> 83 </header> 84 </ons-col> 85 </ons-row> 86 </ons-list-item> 87 </ons-list> 88 </ons-page> 89 </ons-template> 90 91 <ons-template id="page1_1.html"> 92 <ons-page id="page1_1"> 93 <ons-toolbar id="onstoolbar"> 94 <div class="left"><ons-back-button>Back</ons-back-button></div> 95 <div class="center">Page1_1</div> 96 </ons-toolbar> 97 <ons-list> 98 <p>Page1_1です。</p> 99 </ons-list> 100 </ons-page> 101 </ons-template> 102 103 <ons-template id="page1_2.html"> 104 <ons-page id="page1_2"> 105 <ons-toolbar id="onstoolbar"> 106 <div class="left"><ons-back-button>Back</ons-back-button></div> 107 <div class="center">Page1_2</div> 108 </ons-toolbar> 109 <ons-list> 110 <p>Page1_2です。</p> 111 </ons-list> 112 </ons-page> 113 </ons-template> 114 115 <ons-template id="page2_1.html"> 116 <ons-page id="page2_1"> 117 <ons-toolbar id="onstoolbar"> 118 <div class="left"><ons-back-button>Back</ons-back-button></div> 119 <div class="center">Page2_1</div> 120 </ons-toolbar> 121 <ons-list> 122 <p>Page2_1です。</p> 123 </ons-list> 124 </ons-page> 125 </ons-template> 126 127 <ons-template id="page3_1.html"> 128 <ons-page id="page3_1"> 129 <ons-toolbar id="onstoolbar"> 130 <div class="left"><ons-back-button>Back</ons-back-button></div> 131 <div class="center">Page3_1</div> 132 </ons-toolbar> 133 <ons-list> 134 <p>Page3_1です。</p> 135 </ons-list> 136 </ons-page> 137 </ons-template> 138</body> 139</html>
demo.js
javascript
1var app = ons.bootstrap(); 2 3(function(){ 4 $(document).on('pageinit', '#page1', function() { 5 $('#page1_1', this).on('click', function() { 6 app.navi.pushPage('page1_1.html'); 7 }); 8 9 $('#page1_2', this).on('click', function() { 10 app.navi.pushPage('page1_2.html'); 11 }); 12 }); 13 14 $(document).on('pageinit', '#page2', function() { 15 $('#page2_1', this).on('click', function() { 16 app.navi.pushPage('page2_1.html'); 17 }); 18 }); 19 20 $(document).on('pageinit', '#page3', function() { 21 $('#page3_1', this).on('click', function() { 22 app.navi.pushPage('page3_1.html'); 23 }); 24 }); 25 26})();
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/18 02:37
2017/05/18 03:04
2017/05/18 08:20
2017/05/18 11:15
2017/05/19 00:56
2017/05/19 02:04 編集
2017/05/19 04:22
2017/05/22 07:23