3

所以我遇到了一个问题,我需要一个页面来刷新,但我不能在它上面使用 .click() 方法,因为它在 href 上不起作用。我不能使用 window.location 因为我试图渲染一个子选项卡,由于安全原因可以直接访问它。然后我偶然发现了这个帖子:

https://stackoverflow.com/a/12801548/1864552

他的解决方案有效,但我希望有人可以很好地解释为什么会这样。

4

3 回答 3

5

jQueryclick函数会触发与 jQuery 绑定的事件处理程序,并模拟一个事件以尝试触发其他与单击相关的处理程序,但不能完全重现浏览器的原生行为:

尽管 .trigger() 模拟了一个事件激活,并带有一个合成的事件对象,但它并不能完美地复制一个自然发生的事件。

如果添加[0],则不会调用 jQuery 的函数,而是调用标准的 DOM 函数,这在这种情况下非常有效。

于 2013-10-18T14:57:00.423 回答
4

因为 using$('#element')[0]获取 DOM 元素,因此您可以为该元素使用 javascript 函数

于 2013-10-18T14:56:21.220 回答
1

jQuery 的$()函数返回一个带有特殊方法的数组,例如:.css().append(). 当调用这些特殊的数组函数之一时,jQuery 会将操作应用于数组中的所有元素。该数组由 DOM 节点组成,因此当我们使用array[0]语法访问它时,我们会得到一个具有不同方法集的 DOM 元素。

于 2013-10-18T15:04:47.003 回答