SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

jQuery UI/プラグインの活用

jQuery Mobile 1.4の変更点と既存ページ対応のポイント(後編)

「jQuery プラグイン」の利用(20)

Collapsible

 Collapsibleを展開する処理であるtrigger("expand")、折りたたむ処理であるtrigger("collapse")は機能しません。代わりに、collapsible("expand")、collapsible("collapse")を利用します。

[リスト3a]Collapsible操作の変更(変更前)
$("#collapsible1").trigger("expand");
[リスト3b]Collapsible操作の変更(変更後)
$("#collapsible1").collapsible("expand");

 また、Collapsibleの内容はデフォルトで上位のテーマを継承するように変更されました。継承させたくない場合は、data-content-theme属性にfalseを指定します。

[リスト4a]Collapsibleテーマ継承の変更(変更前)
<div data-role="collapsible" id="collapsible1">
[リスト4b]Collapsibleテーマ継承の変更(変更後)
<div data-role="collapsible" id="collapsible1" data-content-theme="false">

Filter

 従来のFilterウィジェットは非推奨とされ、新たにFilterableウィジェットが導入されました。

[リスト5a]Filterの変更(変更前)
<ul data-role="listview" data-filter="true">
  <li>docomo</li>
  <li>au</li>
  <li>SoftBank</li>
  <li>EMOBILE</li>
</ul>
[リスト5b]Filterの変更(変更後)
<form class="ui-filterable">
  <input id="filter-input" data-type="search">
</form>
<ul data-role="listview" data-filter="true" data-input="#filter-input">
  <li>docomo</li>
  <li>au</li>
  <li>SoftBank</li>
  <li>EMOBILE</li>
</ul>

Panel

 Panelをページに追加したときや、Panelの表示・非表示時に適用されるCSSクラスが変更されています。クラスに対して属性を指定している場合は注意が必要です。

表3 jQuery Mobile 1.4で変更されたPanel関連のCSSクラス
変更前 変更後 クラスが付加される要素
pagePanel: "ui-page-panel" pageContainer: "ui-panel-page-container" パネルを含むページ
pagePanelOpen: "ui-page-panel-open" (使用されない) パネルを含むページ
(パネル表示時)
contentWrap: "ui-panel-content-wrap" pageWrapper: "ui-panel-wrapper" パネルを含むページの
内容部
contentFixedToolbar: "ui-panel-content-fixed-toolbar" pageFixedToolbar: "ui-panel-fixed-toolbar" パネルを含むページ内の
固定ツールバー
contentWrapOpen: "ui-panel-content-wrap-open" pageContentPrefix: "ui-panel-page-content" パネルを含むページの
内容部
(パネル表示時)
contentFixedToolbarOpen: "ui-panel-content-fixed-toolbar-open" pageContentPrefix: "ui-panel-page-content" パネルを含むページ内の
固定ツールバー
(パネル表示時)
contentWrapClosed: "ui-panel-content-wrap-closed" (使用されない) パネルを含むページの内容部
(パネル非表示時)
contentFixedToolbarClosed: "ui-panel-content-fixed-toolbar-closed" (使用されない) パネルを含むページ内の固定ツール

アイコン

 アイコンにカスタム画像を指定する場合、CSSにおける指定に:after疑似要素の記述が必要となりました。

[リスト6a]アイコン画像指定の変更(変更前)
.ui-icon-myicon {
    background-image: url("img/myicon.png");
    background-size: 18px 18px;
}
[リスト6b]アイコン画像指定の変更(変更後)
.ui-icon-myicon:after {
    background-image: url("img/myicon.png");
    background-size: 18px 18px;
}

 また、アイコン色を黒くするui-icon-alt、アイコン周囲の丸枠を非表示にするui-icon-nodiscクラスは、それぞれui-alt-icon、ui-nodisc-iconに変更されました。

[リスト7a]アイコン色・枠指定の変更(変更前)
<ul data-role="listview" class="ui-icon-alt ui-icon-nodisc">
[リスト7b]アイコン色・枠指定の変更(変更後)
<ul data-role="listview" class="ui-alt-icon ui-nodisc-icon">

 アイコン影は非推奨となり、iconShadowプロパティの指定は既定でfalseとなりました。アイコンシャドウを将来バージョンでも使い続けるためには、ui-shadow-iconクラスを指定します。

[リスト8a]アイコン影指定の変更(変更前)
<button data-icon="grid" data-iconshadow="true">
  アイコン影</button>
[リスト8b]アイコン影指定の変更(変更後)
<button class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-grid ui-shadow-icon">
  アイコン影</button>

次のページ
その他の修正:生成HTMLの構造変更に注意

この記事は参考になりましたか?

jQuery UI/プラグインの活用連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト  吉川 英一(ヨシカワ エイイチ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/7647 2014/03/20 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー