2017-06-30 8 views
0

私はキーダウンイベントを持つこのスクリプトを持っています。それはデスクトップ上で動作していますが、私はサファリで私のiPhoneでテストするときは動作しません。私はサファリの携帯電話をターゲットにしている入力フィールドにkeydownをトリガーする方法はありますか?モバイル(サファリiphone)のトリガーkeydown

 $('label:contains("Rock the Mall Concert")').closest('div').addClass('rockMall'); 
    $('div.rockMall label:contains("Student")').parent().next().find('input:eq(0)').keyup(function(){ 
     if ($(this).val() > 1){ 
     $(this).parent().find(".regQuant").css('display', 'block').text('Limited to 1 per person'); 
     $(this).val('1'); 
     var e = jQuery.Event("keydown"); 
     e.which = 13; 
     e.keyCode = 13 
     $(this).trigger(e); 
     } 
    }); 

ご協力いただければ幸いです。

+0

touchstartイベントに試してみてください。 –

+0

そのようになりますか?$(this).trigger( 'touchstart'、e); – Jenny

+0

私はタッチパイプがあなたがしたいことに対して働いているとは思わない。 質問を詳しくお聞かせください。私はあなたが手動でイベントを引き起こしているのを見ています。場合によっては、セキュリティ上の理由から、JSを使用してイベントをトリガーすることはできません。 TouchEventのドキュメントへのリンクです。 https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent –

答えて

0

jQueryを使用してこのスニペットを作成しました。 イベント 'keydown'を追加していますが、すべてのブラウザとプラットフォームで実行可能なわけではありませんので、私は 'change'イベントを使用しました。

入力が値を変更した場合、イベントが発生します。

$('input').on('change', function() { 
 
\t // + operator is to parse the value to an integer. 
 
    var ticket_quantity = +$(this).val(); 
 
\t 
 
    if (ticket_quantity < 1 || ticket_quantity > 20) 
 
    { 
 
    \t $(this).val(1); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form> 
 
    <input type="number" name="ticket_quantity" placeholder="Tickets much?"> 
 
</form>

関連する問題