5

我正在使用 iScroll4 插件 ( http://cubiq.org/iscroll-4/ ) 将滚动条添加到超过浏览器视口高度 80% 的页面。出于某种原因(并且仅在这种情况下)我添加它并尝试单击输入时,它不会选择。只有点击它的标签才会选择输入。

我该怎么做才能拥有 iScroll4 和可选输入?

4

4 回答 4

12

试试这个解决方案

   myScroll = new iScroll('wrapper', {});

   myScroll.options.onBeforeScrollStart = function(e) {                
        var target = e.target;

        while (target.nodeType != 1) target = target.parentNode;
        if (target.tagName != 'SELECT' && target.tagName != 'INPUT' && target.tagName != 'TEXTAREA'){
            e.preventDefault();
        }
   }
于 2012-02-23T11:04:10.813 回答
5
$('input[type=text]').bind('touchstart click', function(){
    $(this).focus();
});
于 2013-06-04T14:00:47.510 回答
0
var myScroll;
function loaded() {
    myScroll = new iScroll('wrapper', { scrollbarClass: 'myScrollbar' });

   myScroll.options.onBeforeScrollStart = function(e) {                
        var target = e.target;

        while (target.nodeType != 1) target = target.parentNode;
        if (target.tagName != 'SELECT' && target.tagName != 'INPUT' && target.tagName != 'TEXTAREA'){
            e.preventDefault();
        }
    }
}
document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);

document.addEventListener('DOMContentLoaded', loaded, false);
于 2014-07-03T19:07:59.830 回答
0

我使用的是 5.1.2 版本,它工作正常。

 window.myScroll = new IScroll ('#iscroll-wrapper',
    probeType:  3,
    mouseWheel: true,
    scrollbars: true,
    bounce: true,
    keyBindings: true,
    invertWheelDirection: false,
    momentum: true,
    fadeScrollbars: false,
    interactiveScrollbars: true,
    resizeScrollbars: true,
    shrinkScrollbars: false,
    click: false,
    preventDefaultException: { tagName:/.*/ }
}
于 2015-05-22T10:27:28.233 回答