当我这样做时(至少在Safari 6中,我稍后会测试其他浏览器)我会将文本节点本身作为目标.
即使我直接在文本上执行操作,对于总是产生非文本节点的其他事件也不会发生这种情况.
不用说它使代码比其他方面更复杂.
是否有一个原因?我想避免检查父节点,但幸运的是,这种情况的好处是我只需要检查目标节点的父节点.
我无法确定这是一个功能还是一个bug.
// Target should not be a text node (#504,Safari) if ( event.target.nodeType === 3 ) { event.target = event.target.parentNode; }