我陷入了混乱.
如果假设我实现addEventListener()为一个全局函数(不像某个特定节点的方法那样node.addEventListener()),那么它的行为就像通常的全局函数一样,或者在执行代码时最终成为某个特定节点的方法
注意:定义addEVentListener的DOM级别2规定处理程序已注册到节点.那么它注册到哪个节点; window对象不是节点
我知道应该同时使用两者,event.button并且event.which作为跨浏览器兼容性问题的安全方面。
但我还是很困惑。我无法理解应该使用哪个鼠标事件属性MouseEvent.button或 的确切上下文MouseEvent.which,以及我应该在哪里避免使用该属性。
此外,与不同浏览器相关的怪癖(例如与这些浏览器相关的值)
组织良好的全面细节将不胜感激。
我正在为我的项目使用 webpack。
假设我有一个dep.js包含以下代码的文件
export function abc() {
var a = 10;
}
console.log(100);
function xyz(){
var b = 11;
}
xyx();
Run Code Online (Sandbox Code Playgroud)
我有一个main.js包含以下代码的文件
import {abc} from './dep.js';
Run Code Online (Sandbox Code Playgroud)
根据导入导出的逻辑,只abc需要导入函数即可。但是当我检查控制台中的源代码时我发现
--> 所有其他语句和函数,例如console.log(100),function xyx也被导入
xyz()--> 并且通过in调用函数的效果dep.js也显示了in的效果main.js
为什么会发生这种情况?