!++++
!----
1. はじめに
Client-side JavaScriptおよびCSS を用いて、タブメニューの上部にブロックを配置するサンプルを紹介します。
2. サンプル機能の内容と確認ポイント
タブ名を設定せず非表示となったブロックを再表示し、タブメニューの上部に配置して表示する方法を示します。
通常、「機能設定画面」で任意のブロックにタブ名を入力すると、当該ブロックはタブメニューとして表示され、タブ名が設定されていないブロックは非表示となります。
本手法では、非表示状態にあるブロックをJavaScriptおよびCSSで制御し、明示的に再表示したうえで、タブメニューの上部に配置します。
【Client-side JavaScript による実装内容】
-
タブメニュー要素、挿入先要素、および挿入位置の基準となるブロック要素を取得します。
-
タブメニュー要素を複製し、
id属性にcloned_tab_menu_areaを設定します。 -
取得した挿入先要素に対し、
insertBeforeを用いて、基準ブロック要素の直前に複製したタブメニュー要素を挿入します。 -
複製したタブメニューリスト内の
id属性tab_menu_listをclonedTabMenuListに変更し、ID の重複を回避します。 -
複製したタブメニューリスト内の
a.selectedを取得し、click()を実行することで、非表示ブロックの再表示による高さの超過分が再計算され、正しく反映されます。
【CSS による対応内容】
-
単票ブロック
#box0を表示するため、display: initial !important;を指定します。 -
コピー元のタブメニュー
#tab_menu_areaは、display: none !important;により非表示とします。 -
複製して挿入したタブメニュー
div.tab_menu_areaには、margin-left: initial;を指定して位置を調整します。
🔍 確認いただけるポイント
-
タブメニューの上部に単票ブロックが表示されている状態であること
3. 画面イメージ
以下は、タブメニューの上部に単票ブロックが表示されている状態を示しています。
!++++
関連マニュアル一覧•resizeContents_end()
!----