まず、日本語にするにはlist.htmlを修正します。class="item-title"のspanタグに差出人氏名を、class="item-label"のspanタグに経過時間を、そしてclass="item-desc"のpタグにメール本文を書きます。さらに、サムネイルを表示するには顔写真のファイルを用意し、それをimagesフォルダを作ってその中に入れ、class="item-thum"のdivタグ内にimgタグを挿入して写真を出します。このとき、写真の横サイズは50pxに設定しておきます。これだけです。HTMLファイルは次のようになります。
<ons-page id="list-page"> <ons-toolbar> <div class="center">Master Details</div> </ons-toolbar> <ons-list> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/arimoto.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">在本 璃奈</span> <span class="item-label">3day ago</span> </header> <p class="item-desc"> お仕事お疲れ様です。本社営業部の在本です。 先日(4月30日)の出張の際には、さまざまなお心遣いをいただき、 誠にありがとうございました。 深くお礼申し上げます。 </p> </ons-col> </ons-row> </ons-list-item> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/inukai.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">犬飼 佑汰</span> <span class="item-label">4h</span> </header> <p class="item-desc"> ご多忙中にもかかわらず、 工場・店舗視察にご同行くださったことを、 心より感謝しております。 おかげさまで右往左往することなく、 仕事に邁進することができました。 今回いただいたアドバイスを生かし、 しっかりと精進していきたいと存じます。 今後ともよろしくご指導のほどお願い申し上げます。 </p> </ons-col> </ons-row> </ons-list-item> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/usui.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">臼井 彰生</span> <span class="item-label">6h</span> </header> <p class="item-desc"> お疲れ様です。臼井彰生です。 先日お借りしました資料、5月31日にお返しに伺います。 お陰様で、大変参考になるデータが多くあり、仕事の上で有意義に生かすことが できました。ご好意に感謝しております。 まずは御礼かたがたご連絡まで。 </p> </ons-col> </ons-row> </ons-list-item> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/nakamura.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">中村 綾斗</span> <span class="item-label">2m</span> </header> <p class="item-desc"> お疲れ様です。営業部の中村です。 昨日は、ご馳走になりましてありがとうございました。 また、課長からたくさんの話を伺うことができ、とても勉強になりました。 正直なところ、今抱えている仕事が行き詰まっていまして、 課長にご相談したいと思ってはいましたが、なかなか言い出せずにおりました。 </p> </ons-col> </ons-row> </ons-list-item> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/shimizu.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">清水 伸平</span> <span class="item-label">5day ago</span> </header> <p class="item-desc"> いつもお世話になっております。 清水伸平です。 昨日、ご紹介いただいた弁護士の竹田先生にお会いし、お話を伺ってきました。 先ほど、東京に戻ってきたところです。 </p> </ons-col> </ons-row> </ons-list-item> <ons-list-item modifier="chevron" class="item"> <ons-row> <ons-col width="60px"> <div class="item-thum"> <img src="images/tanaka.jpg" class="item-thum-photo" width="50px"></img> </div> </ons-col> <ons-col> <header> <span class="item-title">田中 昌昭</span> <span class="item-label">1week ago</span> </header> <p class="item-desc"> いつもお世話になっております。 株式会社川崎システムズ ヘルプデスクです。 平素は弊社のサービスをご利用いただきまして、誠にありがとうございます。 6月1日より、レセコンORCAにスマホでアクセスできる アプリmyORCAの販売を開始いたしますのでご案内いたします。 </p> </ons-col> </ons-row> </ons-list-item> </ons-list> </ons-page>とても長いですね。もっと簡略化したいところです。また、このHTMLではメールの数は6件と固定ですが、実用的なものにしようとすればメールの数がいくらあっても表示できるようにしたいところです。そこで、javascriptを使って任意の件数のメールを表示できるようにしてみましょう。そのために、まずメールデータを独立させます。メールデータを次のようにjavascriptオブジェクト形式で表現します。
var listData = [ { "title": "在本 璃奈", "label": "3day ago", "desc": "お仕事お疲れ様です。本社営業部の在本です。先日(4月30日)の出張の際には、さまざまなお心遣いをいただき、誠にありがとうございました。深くお礼申し上げます。", "photo": "images/arimoto.jpg" }, { "title": "犬飼 佑汰", "label": "4h", "desc": "ご多忙中にもかかわらず、工場・店舗視察にご同行くださったことを、心より感謝しております。おかげさまで右往左往することなく、仕事に邁進することができました。今回いただいたアドバイスを生かし、しっかりと精進していきたいと存じます。今後ともよろしくご指導のほどお願い申し上げます。", "photo": "images/inukai.jpg" }, { "title": "臼井 彰生", "label": "6h", "desc": "お疲れ様です。臼井彰生です。 先日お借りしました資料、5月31日にお返しに伺います。 お陰様で、大変参考になるデータが多くあり、仕事の上で有意義に生かすことが できました。ご好意に感謝しております。 まずは御礼かたがたご連絡まで。", "photo": "images/usui.jpg" }, { "title": "中村 綾斗", "label": "2m", "desc": "お疲れ様です。営業部の中村です。昨日は、ご馳走になりましてありがとうございました。また、課長からたくさんの話を伺うことができ、とても勉強になりました。正直なところ、今抱えている仕事が行き詰まっていまして、課長にご相談したいと思ってはいましたが、なかなか言い出せずにおりました。", "photo": "images/nakamura.jpg" }, { "title": "清水 伸平", "label": "5day ago", "desc": "いつもお世話になっております。清水伸平です。昨日、ご紹介いただいた弁護士の竹田先生にお会いし、お話を伺ってきました。先ほど、東京に戻ってきたところです。", "photo": "images/shimizu.jpg" }, { "title": "田中 昌昭", "label": "1week ago", "desc": "いつもお世話になっております。株式会社川崎システムズ ヘルプデスクです。平素は弊社のサービスをご利用いただきまして、誠にありがとうございます。6月1日より、レセコンORCAにスマホでアクセスできるアプリmyORCAの販売を開始いたしますのでご案内いたします。", "photo": "images/tanaka.jpg" } ];javascriptオブジェクト形式と言うのは、(属性:属性値)のペアを必要なだけ{と}で囲んだものです。上の例では、title, label, desc, photoという4つの属性があり、それが6人分配列として定義されています(配列は[と]でカンマ区切りの要素を羅列します)。このようにすると、例えばdataList[0].titleの値は"在本 璃奈"となります。これを使ってlist.html内のons-listタグの中身を作成する処理が次のようになります。この処理はapp.jsのlist-pageが表示されるタイミングで実行されるようにしてあります。
(function(){ 'use strict'; var currentItem = {}; $(document).on('pageinit', '#detail-page', function() { $('.item-title', this).text(currentItem.title); $('.item-desc', this).text(currentItem.desc); $('.item-label', this).text(currentItem.label); $('.item-thum-photo', this).attr('src', currentItem.photo); $('.add-note-action-item', this).click(function () { alert('dummy message'); }); }); $(document).on('pageinit', '#list-page', function() { var html = ''; $.each(listData, function(i, item) { html += ''; html += ' '; } ); $("#item-list").html(html); var content = $("#item-list").get(0); ons.compile(content); $('.item', this).on('click', function() { currentItem = { title : $('.item-title', this).text(), desc : $('.item-desc', this).text(), label : $('.item-label', this).text(), photo : $('.item-thum-photo', this).attr('src') }; app.navi.pushPage('detail.html'); }); }); })();'; html += ' '; html += ''; html += ' '; html += ''; html += ''; html += ''; html += ''; html += ' '; html += ''; html += '' + item.title + ''; html += '' + item.label + ''; html += ' '; html += '' + item.desc + '
'; html += '
0 件のコメント:
コメントを投稿