移动端使用isscroll.js input没法获取焦点(就是点了没反应啦!)

有幸网上找到了解决的办法html

只要在代码里加入如下一段代码就能够了spa

function allowFormsInIscroll(){
 [].slice.call(document.querySelectorAll('input, select, button')).forEach(function(el){
 el.addEventListener(('ontouchstart' in window)?'touchstart':'mousedown', function(e){
 e.stopPropagation();
 
 })
 })
 }
 document.addEventListener('DOMContentLoaded', allowFormsInIscroll, false);

 问题缘由是:iscroll须要一直监听用户的touch操做,以便灵敏的作出对应效果,因此它把其他的默认事件屏蔽了。code

以上代码原理是:页面加载完成后查找到全部的'input, select, button'元素并依次绑定'touchstart'或'mousedown'事件,在执行事件的时候中止事件的传播,这样行了。orm

原做者地址:http://www.cnblogs.com/duanhuajian/archive/2012/11/09/2763159.htmlhtm

相关文章
相关标签/搜索