gpt4 book ai didi

javascript - 为什么 isDefaultPrevented 检查 modal.js 中的 div?

转载 作者:行者123 更新时间:2023-12-01 05:43:40 27 4
gpt4 key购买 nike

嘿,伙计们刚刚浏览了 modal.js 的源代码,发现了以下代码行。

$target.one('show.bs.modal', function (showEvent) {
if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown
$target.one('hidden.bs.modal', function () {
$this.is(':visible') && $this.trigger('focus')
})
})

$target 实际上只不过是以下内容:

<div aria-hidden="false" aria-labelledby="myModalLabel" role="dialog" tabindex="-1" id="myModal" class="modal fade in" style="display: block;">

上面代码中我不明白的是为什么要检查 isDefaultPrevented正在 div 上执行 ??

即下面的代码行:

if (showEvent.isDefaultPrevented())  return

有人能解释一下吗?

我的难点也可以在 git 上找到:Line 331

谢谢。

最佳答案

'show.bs.modal' 是在 div 上触发的事件名称。这段代码监听该 div 上的 on 事件。

现在,您粘贴的代码的重点是:

如果另一段代码已经捕获了该事件并在事件对象上调用了 preventDefault(),那么,当执行这段代码时,它会使用 isDefaultPrevented 知道这一点code> 并返回而不执行任何操作。

这样您就可以阻止该事件的默认行为,就像阻止 click 事件的默认行为一样。

关于javascript - 为什么 isDefaultPrevented 检查 modal.js 中的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29048567/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com