事件:defaultPrevented 属性

注意:此功能在Web Workers 中可用。

defaultPreventedEvent 接口的只读属性,它返回一个布尔值,指示是否调用了 Event.preventDefault() 来取消事件。

布尔值,其中 true 表示已阻止默认的 用户代理 操作,而 false 表示未阻止。

示例

此示例记录了尝试从两个 <a> 元素访问链接。JavaScript 用于阻止第二个链接起作用。

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①

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。