请问这个事件是怎么挂监听上去的阿

2019-03-28 03:01:34 +08:00
 shuperjolly
https://weui.io/

首页菜单点击的风琴折叠动作

我看 example.js 里创见了 TouchEvent 事件,然后在菜单的 div 中有 touchstart 和 touchend 事件监听,但是这个事件监听是用什么方法挂载这个 div 上的阿
2758 次点击
所在节点    JavaScript
3 条回复
shuperjolly
2019-03-28 09:49:55 +08:00
应该是这个函数
function fastClick(){
var supportTouch = function(){
try {
document.createEvent("TouchEvent");
return true;
} catch (e) {
return false;
}
}();
var _old$On = $.fn.on;

$.fn.on = function(){
if(/click/.test(arguments[0]) && typeof arguments[1] == 'function' && supportTouch){
var touchStartY, callback = arguments[1];
_old$On.apply(this, ['touchstart', function(e){
touchStartY = e.changedTouches[0].clientY;
}]);
_old$On.apply(this, ['touchend', function(e){
if (Math.abs(e.changedTouches[0].clientY - touchStartY) > 10) return;

e.preventDefault();
callback.apply(this, [e]);
}]);
}else{
_old$On.apply(this, arguments);
}
return this;
};
}


$.fn.on 这个是监听添加,但是这里面这个函数有老鸟帮忙说说什么逻辑吗
lukaz
2019-03-28 13:46:13 +08:00
页面 js,$('.js_category').on('click', function(){ ... })
shuperjolly
2019-03-28 15:29:32 +08:00
@lukaz 为什么它在页面 js 的这个标签里面加 class="home js_show",有什么作用啊

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

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

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

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

© 2021 V2EX