初学者/中级开发人员在这里并试图掌握跟踪事件侦听器,但发现自己感到困惑和沮丧,因为它总是指向处理事件的库,而不是用户的脚本。事件侦听器手风琴的示例在具有“keyup”事件绑定的选择元素上:
keyup
div.select
handler: function (e){return typeof b===i||e&&b.event.triggered===e.typet:b.event.dispatch.apply(f.elem,arguments)}
isAttribute: false
lineNumber: 3
listenerBody: "function (e){return typeof b===i||e&&b.event.triggered===e.type?t:b.event.dispatch.apply(f.elem,arguments)}"
node: div.select
sourceName: "https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"
type: "keyup"
useCapture: false
显然他们正在使用 jQuery,并且他们通过使用 jQuery 的 $.extend 方法做得非常好,但我仍然不明白为什么事件手风琴(在开发工具中)会指向库而不是自定义脚本?
我在课堂上错过了什么非常基本的东西吗?除了“资源”选项卡中的 CTRL+F 之外,还有哪些方法可以跟踪这些类型的事情,顺便说一句,在实际扩展/添加此侦听器的文件中没有产生任何“选择”的搜索结果 - 很奇怪不是吗?
更新:所以我对此感到很愚蠢,但答案就在我眼前——至少我是这么认为的。在他们开始的自定义脚本的顶部,
define(["jquery"], function($) {
这可能是答案的开始吗?我真正想了解的是,当事件侦听器绑定在上面的代码中时,为什么事件仍然会追溯到库,
$el.textHolder.click(function(e){
... do stuff ...
}