ionic2 tap事件怎么用 ios
2个回答
展开全部
问题前几刚刚总结前已知乎答类似问题
1、tap事件穿透(解决案:click事件代替 或者尝试fastclick框架);
或者尝试面办重写zepto绑定事件
/*************** 重写zepto on避免事件穿透 ******************/
(function() {
var INTERVAL_MIN = 500;
var lastCalledTime = (new Date()).getTime();
function throttle(handler) {
return function() {
var curTime = (new Date()).getTime();
//两tap事件间隔于500
if(curTime - lastCalledTime > INTERVAL_MIN) {
lastCalledTime = curTime;
handler.apply(this, arguments);
}
}
}
var oldOn = $.fn.on;
$.fn.on = function( evt ){
if(evt === 'tap'){
var args = Array.prototype.slice.call(arguments);
var handlerIndex;
for(var i = 0; i < args.length; i++) {
if(typeof args[i] === 'function') {
handlerIndex = i;
break;
}
}
args[handlerIndex] = throttle(args[handlerIndex]);
this.on('click', function(e) {
e.preventDefault();
});
return oldOn.apply( this, args );
}
return oldOn.apply( this, arguments );
};
})();
解决原理:意义用户操作500毫秒内连续触发两tap事件发现两tap事件间间隔于500毫秒则阻止第二tap事件
两副作用能修复问题
(1). 能穿透点a链接需要额外给a绑定tap事件js进行跳转
(2). trigger主触发候能问题
(3).解决跨页面穿透问题
2、fixed元素input框iosbug(考虑底部定高间加iScroll内容区域实现尾固定间内容滑UI交互布局);
3、离线缓存更新功必须刷新页面才能显示新修改(写全局监听updateready主帮用户刷新页面);
4、UC浏览器支持alert(建议用自通用弹窗);
5、同zepto写选择器候层级深某些浏览器失效(节点classid命名合理配用规选择器串);
6、QQ浏览器SVG失效;
7、chrome米自带手机浏览器发调试走代理(载chromebeta版)
1、tap事件穿透(解决案:click事件代替 或者尝试fastclick框架);
或者尝试面办重写zepto绑定事件
/*************** 重写zepto on避免事件穿透 ******************/
(function() {
var INTERVAL_MIN = 500;
var lastCalledTime = (new Date()).getTime();
function throttle(handler) {
return function() {
var curTime = (new Date()).getTime();
//两tap事件间隔于500
if(curTime - lastCalledTime > INTERVAL_MIN) {
lastCalledTime = curTime;
handler.apply(this, arguments);
}
}
}
var oldOn = $.fn.on;
$.fn.on = function( evt ){
if(evt === 'tap'){
var args = Array.prototype.slice.call(arguments);
var handlerIndex;
for(var i = 0; i < args.length; i++) {
if(typeof args[i] === 'function') {
handlerIndex = i;
break;
}
}
args[handlerIndex] = throttle(args[handlerIndex]);
this.on('click', function(e) {
e.preventDefault();
});
return oldOn.apply( this, args );
}
return oldOn.apply( this, arguments );
};
})();
解决原理:意义用户操作500毫秒内连续触发两tap事件发现两tap事件间间隔于500毫秒则阻止第二tap事件
两副作用能修复问题
(1). 能穿透点a链接需要额外给a绑定tap事件js进行跳转
(2). trigger主触发候能问题
(3).解决跨页面穿透问题
2、fixed元素input框iosbug(考虑底部定高间加iScroll内容区域实现尾固定间内容滑UI交互布局);
3、离线缓存更新功必须刷新页面才能显示新修改(写全局监听updateready主帮用户刷新页面);
4、UC浏览器支持alert(建议用自通用弹窗);
5、同zepto写选择器候层级深某些浏览器失效(节点classid命名合理配用规选择器串);
6、QQ浏览器SVG失效;
7、chrome米自带手机浏览器发调试走代理(载chromebeta版)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询