monacaでの画面遷移
解決済
回答 1
投稿
- 評価
- クリップ 0
- VIEW 4,499
現在、画面遷移の練習をしています。
list.html画面とdetail.html画面を作りました。
list.htmlからdetail.htmlに画面遷移をするようにしたいのですが、出来ません。
自分で調べていると、<ons-template id="detail.html"> ここの設置場所が違うのかなぁと思っています。
画面遷移をさせるやり方がわかる方回答よろしくお願いします。
<!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/onsenui/js/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.ready(function() {
console.log("Onsen UI is ready!");
});
</script>
</head>
<body>
<ons-navigator page="list.html" var="app.navi">
<ons-template id="list.html">
<!-- list.htmlの内容 -->
<ons-page id="list-page">
<ons-toolbar>
<div class="center">
HOOK
</div>
</ons-toolbar>
<ons-list>
<ons-list-item modifier="chevron" class="item">
<ons-row>
<ons-col width="60px">
<div class="item-thum"></div>
</ons-col>
<ons-col>
<header>
<span class="item-title">item title</span>
<span class="item-label">4h</span>
</header>
<p class="item-desc">lorem ipusum</p>
</ons-col>
</ons-row>
</ons-list-item>
</ons-list>
</ons-page>
</ons-template>
</ons-navigator>
<ons-template id="detail.html">
<!-- detail.htmlの内容 -->
<ons-page id="detail-page">
<ons-toolbar>
<div class="left">
<ons-back-button>BACK</ons-back-button>>
</div>
<div class="center">
Details
</div>
</ons-toolbar>
<ons-list modifier="inset" style="margin-top: 10px;">
<ons-list-item class="item">
<ons-row>
<ons-col width="60px">
<div class="item-thum">
</div>
</ons-col>
<ons-col>
<header>
<span class="item-title">TITLE</span>
<span class="item-label">FOOBAR</span>
</header>
<p class="item-desc">DESC</p>
</ons-col>
</ons-row>>
</ons-list-item>>
</ons-page>
</ons-template>
</body>
</html>
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
0
パッと見、遷移する挙動がどこにも入っていないようですが・・・
そもそもどこをタップすれば、detailに遷移するのでしょうか。
(静止画を見て、全く動画が再生されないのですが・・・というような状況です)
①ナビゲーターにidを付けてください。
②タップするところを宣言してください
③タップされたことをイベントリスナーで検知してください
④でタップが検知されたら次のdetailページにpushPage遷移してください。
<ons-template id="detail.html"> などを宣言しただけでは遷移しません。
あくまでも、その名前のページを作ったにすぎません。
こちらのソースコードをそのまま使えば良いと思います。
Onsen UI ページナビゲーション
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.34%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2017/12/03 15:16
添付してくださった内容を元に勉強していますが、なかなかうまくいきません。
もしよろしければ、訂正したコード載せていただけないでしょうか?
2017/12/04 09:06 編集
>訂正したコード載せていただけないでしょうか?
他の質問・回答もそうですが、人に任せるのではなく、
勉強された内容(反映されたコード)を載せられるべきです。
①②③④のどこがわからないのか、最初のコードから何を変えたのか・・・。
上記のリンク先にサンプル(再生ボタン押すと動きます)があり、
そこに該当する全てのコードが記載されています。
1行1行、何をやっているか、変えたら何が変わるのか、
まずはサンプルを理解されることをお勧めします。
それでもダメであれば、MonacaやOnsen UI以前の
HTML、CSS、JavaScriptの基礎的な知識が必要かと思います。
Monacaのマニュアル、公式本もありますし。
2017/12/04 17:49
①の回答で言えば、指摘されてるナビゲーターがわかりませんし、②で言えば、どこに宣言すれば良いのかがわかりません。③④なんてどこをいじれば良いのか全くわからないのです。
すいません。
もちろん公式の本を読んでから質問しているのですが、初心者なのでお許しください...
2017/12/04 19:01 編集
以前に別の質問に回答した記憶があるのですが、Monacaでのアプリ開発は
HTML,CSS,JavaScriptの基本知識が【前提条件】【必須】です。
ホームページ等を作成された経験がないと、正直アプリから始めるのはキツイと思います。
もしホームページを作成された経験があるのでしたら、
初回に記載されたコードにlist⇒detailに移動する「リンク設定」も
「移動ボタン」もないことは理解できるかと思います。
※detailに戻るボタンだけありますが、そもそもlistからいけない。
さらにリンクやボタンを設置しても次に「JavaScript」で
ボタンやリンクがタップされたら・・・というプログラミングが必要です。
躓いている、理解が出来ないとおっしゃる理由は、キツイ言い方かもしれませんが、
【Monaca】や【Onsen UI】以前の、前提条件にあるかもしれません。
CSSは後回しで良いので、HTMLやJavaScriptは
Monacaでなくても初心者向けのサンプルコードをまずは1行ずつ読んで理解する、
次は自分の思うものを書いてみる というステップは、ここにいる皆さん歩まれていると思います。
2017/12/04 19:52
一応HTMLやCSSは独学で勉強したのですが、浅い理解なんだと思います。
また勉強します!
ありがとうございました(^^)