不用jquery,怎么实现jquery的trigger?

2012-08-27 13:41:13 +08:00
 qiayue
就是想让页面中的按钮被触发点击事件
4530 次点击
所在节点    问与答
3 条回复
litten
2012-08-27 19:48:15 +08:00
这个比较难自己去做,建议直接官方源码搞起。但是,官网源码又比较难懂了,它有一大部分只是为了兼容火狐,ff中jQuery对链接的默认行为都统一为不能触发,它做了另外一种处理(方法我看不懂)。
额,我懂的只有这一点了,粗浅得很:
trigger的实现原理最核心部分是handle,jq注册事件时候,会保存一个与元素及事件名相对应的cache中。当你通过等程序来强迫触发时,从cache中取到对应的函数。如果这个对应的函数是浏览器默认的那种,比如domInput.select,它就要再伪造一个function setDomSelected(){}这样的函数强制执行就可以了。
kojp
2012-08-28 09:14:52 +08:00
我总觉得jQ能实现的的东西,其实原生的js 都是能实现的。关键就是你是否愿意花时间去折腾,尤其是在
浏览器的兼容性。这件蛋疼的事情上面。--------------其实,也没啥 。if else就是了。先把标准的浏览器写好。然后再加一些判断浏览器的功能。
NemoAlex
2012-08-28 09:58:28 +08:00
buttonElement.click()

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/46132

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX