前提・実現したいこと
<ons-button>コンポーネント使用して
指定したページを表示するコードを既存のコードに追加したところ
<ons-splitter>コンポーネントがうまく動作しませんでした。
<ons-button>のタップイベントを残しつつ
<ons-splitter>コンポーネントが正常に動作するようにしたいです。
<ons-navigator>コンポーネントを使用してのページの切り替えの詳細至っては
プログラム初心者なので理解が乏しいです。
具体的な解決法を教えていただけると嬉しいです。
(※一部省略している箇所があります)
該当のソースコード
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <meta http-equiv="Content-Security-Policy" content="default-src * data: gap: https://ssl.gstatic.com; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'"> <script src="components/loader.js"></script> <script src="lib/angular/angular.min.js"></script> <script src="lib/onsenui/js/onsenui.min.js"></script> <script src="lib/onsenui/js/angular-onsenui.min.js"></script> <link rel="stylesheet" href="components/loader.css"> <link rel="stylesheet" href="lib/onsenui/css/onsenui.css"> <link rel="stylesheet" href="lib/onsenui/css/onsen-css-components.css"> <link rel="stylesheet" href="css/style.css"> <script> ons.bootstrap() ons.ready(function(){ }); window.fn = {}; window.fn.open = function() { var menu = document.getElementById('menu'); menu.open(); }; window.fn.load = function(page) { var content = document.getElementById('content'); var menu = document.getElementById('menu'); content .load(page) .then(menu.close.bind(menu)); }; document.addEventListener('show', function(event) { var page = event.target; var titleElement = document.querySelector('#toolbar-title'); if (page.matches('#first-page')) { titleElement.innerHTML = 'ホーム画面'; } else if (page.matches('#second-page')) { titleElement.innerHTML = '観光地図'; } else if (page.matches('#third-page')) { titleElement.innerHTML = '投稿画面' } }); </script> </head> <body> <ons-navigator var="myNavigator" page="tab.html> </ons-navigator> <ons-splitter> <ons-splitter-side id="menu" side="left" width="220px" collapse swipeable> <ons-page> <ons-list> <ons-list-header>メニュー画面</ons-list-header> <ons-list-item onclick="fn.load('tab.html')" tappable>Home </ons-list-item> <ons-list-item onclick="fn.load('settings.html')" tappable>Settings </ons-list-item> <ons-list-item onclick="fn.load('about.html')" tappable>about </ons-list-item> </ons-list> </ons-page> </ons-splitter-side> <ons-splitter-content id="content"page="tab.html"> </ons-splitter-content> </ons-splitter> <template id="tab.html"> <ons-page> <ons-toolbar> <div class="center" id="toolbar-title"></div> </ons-toolbar> <ons-tabbar var="myTabbar"> <ons-tab icon="ion-home" label="ホーム" page="page1.html" active> </ons-tab> <ons-tab icon="ion-map" label="マップ" page="page2.html"> </ons-tab> <ons-tab icon="ion-edit" label="投稿" page="page3.html"> </ons-tab> </ons-tabbar> </ons-page> </template> <template id="page1.html"> <ons-page id="first-page"> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> </div> </ons-toolbar> <p style="text-align: center; opacity: 0.6; padding-top: 20px;"> //ここに表示させるものを入力 </p> </ons-page> </template> <template id="page2.html"> <ons-page id="second-page"> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> </div> </ons-toolbar> <p style="text-align: center; opacity: 0.6; padding-top: 20px;"> <ons-button onclick="myNavigator.pushPage('map.html')"> マップ表示 </ons-button> </p> </ons-page> </template> <template id="page3.html"> <ons-page id="third-page"> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> </div> </ons-toolbar> <p style="text-align: center; opacity: 0.6; padding-top: 20px;"> //ここに表示させるものを入力 </p> </ons-page> </template> <template id="settings.html"> <ons-page id="settings-page"> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> Settings </div> </ons-toolbar> </ons-page> </template> <template id="about.html"> <ons-page> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> About </div> </ons-toolbar> </ons-page> </template> <template id="map.html"> <ons-page id="map-page"> <ons-toolbar> <div class="left"> <ons-toolbar-button onclick="fn.open()"> <ons-icon icon="ion-navicon, material:md-menu"></ons-icon> </ons-toolbar-button> </div> <div class="center"> <iframe src="指定したサイト" width="640" height="480"></iframe> </div> </ons-toolbar> </ons-page> </template> </body> </html>
補足情報(FW/ツールのバージョンなど)
Cordovaバージョン:1.0.3
iPhone7 iOS:12.0.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/30 15:40
2018/12/01 06:39