web-dev-qa-db-ja.com

onClickがモバイル(タッチ)で機能しない

OK、ユーザーがリストアイテムをクリックしたときにdivを下にスライドさせようとしています。

問題は、選択ボックスを番号なしリストに変換するSelectric https://github.com/lcdsantos/jQuery-Selectric を使用していることです。ユーザーがソースをクリックしてリストアイテムとして出力する場合、divを下にスライドさせます。

モバイルサファリ(iOS7)では、selectbox UIは標準のselectbox UIと同じです。

OnClick for mobile devicesのベストプラクティスは何ですか?

基本的なjquery:

$(window).load(function() {
        $('.List li').click(function() {
            $('.Div').slideDown('500');
        });
    });

実際の例を見ることができます [〜#〜] here [〜#〜] (サイドバーでの高度な検索)

ありがとう。

30
Dale

.on() jQueryメソッドでtouchstartイベントを使用することをお勧めします。

$(window).load(function() { // better to use $(document).ready(function(){
    $('.List li').on('click touchstart', function() {
        $('.Div').slideDown('500');
    });
});

$(window).load()メソッドを使用している理由がわかりません。ページ上のすべての要素がロードされるのを待つため、これは遅くなる傾向がありますが、ページの各要素が最初にロードされるのを待たない$(document).ready()メソッドは使用できます。

80
Jai

クリックの代わりに使用できます:

$('#whatever').on('touchstart click', function(){ /* do something... */ });
8
Ram Patidar