簡體   English   中英

iscroll4防止鍵盤顯示聚焦在外部輸入(android / ios)上

[英]iscroll4 prevents keyboard display on focus on an extern input (android/ios)

我在Android(2.2 / 2.3和ios)上的iScroll有問題

我有一個看起來像這樣的代碼:

<input id = "thing" val=""/>
    <div id="scroller" style="overflow:auto; height:150px;">
        <ul>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
            <li><a class="thing">thing</a></li>
        </ul>
    </div>
    <a class="thing">thing</a>

和js:

$( document ).ready( function(e) {
    var testScroll = new iScroll('scroller', {vScrollbar: false});
    $('a.thing').on('click', function(){$('#thing').focus();});
};

當我單擊唯一鏈接時,我將注意力集中在#thing輸入上,並出現軟鍵盤。 當我單擊滾動條中的按鈕時,會給出焦點,但不會出現鍵盤。

我真的不明白什么在這里行不通。 我想讓鍵盤出現。

編輯:我正在使用jquery移動,如果這可以幫助我。

嘗試判斷目標是否為輸入元素,請在iscroll.js中修改'_start'函數:

_start: function (e) {
    var that = this,
    point = hasTouch ? e.changedTouches[0] : e,
    matrix;

    that.moved = false;

    if ( e.target.tagName == "SELECT" || e.target.tagName == "INPUT"
        || e.target.tagName == "BUTTON" || e.target.tagName == "TEXTAREA") {
        return true;
    }

    e.preventDefault();

    // more codes here

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM