A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/ja/docs/Web/API/HTMLButtonElement/popoverTargetAction below:

HTMLButtonElement: popoverTargetAction プãƒãƒ‘ティ - Web API

この例では、 popoverTargetAction プロパティに "toggle" 値を設定したポップオーバー API の基本的な使用例を示します。 popover 属性は "auto" に設定されているので、ポップオーバーはポップオーバー領域の外側をクリックすることで閉じることができます("light-dismissed")。

最初にポップオーバーの表示・非表示に使用する HTML 要素 <button> とポップオーバーになる <div> を定義します。 この阿合、popovertargetaction 属性を <button> を設定したり、popover 属性を <div> に設定したりはしません。プログラム的に行うからです。

<button id="toggleBtn">ポップオーバーのトグル切り替え</button>
<div id="mypopover">これはポップオーバーの内容です。</div>

JavaScript コードは最初に <div> と <button> 要素のハンドルを取得します。 そして、ポップオーバーに対応しているかどうかを調べる関数を定義します。

const popover = document.getElementById("mypopover");
const toggleBtn = document.getElementById("toggleBtn");

// ポップオーバー API に対応しているか確認
function supportsPopover() {
  return HTMLElement.prototype.hasOwnProperty("popover");
}

ポップオーバー API に対応している場合、コードは <div> 要素の popover 属性を "auto" に設定し、それをトグルボタンのポップオーバー対象とします。 そして <button> の popoverTargetAction を "toggle" に設定します。 ポップオーバー API に対応していない場合は、<div> 要素のテキストコンテンツを変更してその旨を記述し、トグルボタンを非表示にします。

if (supportsPopover()) {
  // <div> 要素を自動ポップオーバーに設定
  popover.popover = "auto";
  // ボタンのターゲットをこのポップオーバーに設定
  toggleBtn.popoverTargetElement = popover;

  // ボタンがポップオーバーの表示を切り替えるように設定する
  toggleBtn.popoverTargetAction = "toggle";
} else {
  popover.textContent = "ポップオーバー API に対応していません。";
  toggleBtn.hidden = true;
}

メモ: ポップオーバー要素は既定で非表示になりますが、要素が API に対応していない場合は「通常通り」表示されます。

下記の例を試してみてください。 ボタンを押すたびにポップオーバーを表示させたり非表示にしたりできます。 "auto" ポップオーバーはポップオーバーテキストの範囲外を選択することで「簡単な解除」をすることもできます。


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4