jquery mobile+iscroll 一起使用 data-filter 不能输入任何信息

最近做移动项目接触到了jquery moblie ,项目中要求 使用jquery mobile listview +iscroll实现区域滚动。
但是在做的过程中发现问题,是 iscroll 和jquery mobile 一起使用会导致 filter 不能使用。结果在网上找了半天,最后还是一个群里面的朋友告诉我:
由于要通过touch事件模拟浏览器的滚动,iscroll阻止了滚动区域内的所有浏览器默认动作导致输入框焦点无法进入等问题。
解决方法:
在iscroll初始化时,注册以下方法,排除掉需要浏览器默认动作的元素

js代码

onBeforeScrollStart: function(e) {
			var target = e.target;
			while (target.nodeType != 1) target = target.parentNode;
			if (target.tagName != 'SELECT' && target.tagName != 'INPUT' && targ                           et.tagName != 'TEXTAREA' && target.tagName != 'BUTTON'){
				 e.preventDefault();
				}
	}

相关推荐