Event: defaultPrevented プロパティ
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。
defaultPrevented は Event インターフェイスの読み取り専用プロパティで、Event.preventDefault() の呼び出しがイベントをキャンセルしたかどうかを示す値を論理値で返します。
値
論理値で、 true は既定のユーザーエージェントの動作が抑制されたことを、 false はそうではないことを表しています。
例
この例は 2 つの <a> 要素のリンクを訪れる試みをログ出力します。 JavaScript は 2 番目のリンクの動作を抑制するために使用しています。
HTML
html
<p><a id="link1" href="#link1">Visit link 1</a></p>
<p><a id="link2" href="#link2">Try to visit link 2</a> (you can't)</p>
<p id="log"></p>
JavaScript
js
function stopLink(event) {
event.preventDefault();
}
function logClick(event) {
const log = document.getElementById("log");
if (event.target.tagName === "A") {
log.innerText = event.defaultPrevented
? `Sorry, but you cannot visit this link!\n${log.innerText}`
: `Visiting link…\n${log.innerText}`;
}
}
const a = document.getElementById("link2");
a.addEventListener("click", stopLink);
document.addEventListener("click", logClick);
結果
仕様書
| 仕様書 |
|---|
| DOM> # ref-for-dom-event-defaultprevented①> |