Mos*_*heK 6 javascript google-chrome
如果你看一下Chrome 中的这个小提琴并点击js控制台打开的Trigger文本,你会看到:

所有这些with街区的原因是什么?它的价值是什么?
在我看来它是指定为HTML"onclick"属性时,浏览器如何为事件处理程序创建函数.我认为它的作用是:
<a>标记)的属性,空对象(?)和文档对象看起来是该函数中代码的可用符号.也就是说,this[0]是<a>元素本身,this[1]看起来像一个空的对象实例,this[2]是文档对象.这意味着在代码中你编写"onfoo"事件处理程序属性的一部分(而不是从直接JavaScript代码绑定的任何普通事件处理程序中的代码),可以引用目标元素的属性(元素为您正在设置属性)和文档元素的属性,就好像它们存在于作用域链中一样.
如果您稍微更改一下代码:
$('<a href=# onclick="console.log(baseURI);"> ...
Run Code Online (Sandbox Code Playgroud)
然后你得到<a>元素的"baseURI"属性的值.无需为显式引用该<a>元素的DOM节点的任何内容添加"baseURI"前缀; 它只是"存在",好像它是var在一些封闭范围内声明的那样.
(现在查看w3c规范......)编辑 - 我还没有找到任何规定事件处理程序中脚本代码可用的符号的内容.这真的很奇怪.
再次编辑 - Firefox似乎做了同样的事情,虽然我没有在with任何地方看到明确的陈述.
| 归档时间: |
|
| 查看次数: |
108 次 |
| 最近记录: |