2017-10-12 19 views
0

私のウェブサイトにはいくつかのフォームがあります。フォームを送信するのを待つ間に複数回クリックしないようにするには、以下のjqueryスクリプトを使用して送信ボタンを隠しています。コードはそれをいくつかの "待ってください"というテキストで置き換えます)。デスクトップ上では完全に動作しますが、モバイルではまったく動作しません。誰かがこれがどうして起こるのかをアドバイスできますか?なぜこのjqueryスクリプトはモバイルで動作しませんか?

<script> 
jQuery(document).ready(function() { 
    jQuery('#gform_next_button_5_85', this).click(function() { 
     jQuery('#gform_next_button_5_85').css('display','none'); 
     jQuery('#gform_previous_button_5_85').css('display','none'); 
     jQuery('.pleasewait').css('display','block'); 
    }); 
jQuery('#gform_submit_button_5', this).click(function() { 
     jQuery('#gform_submit_button_5').css('display','none'); 
     jQuery('#gform_previous_button_5').css('display','none'); 
     jQuery('.pleasewait2').css('display','block'); 
    }); 
}); 
</script> 
+2

携帯端末で「クリック」することはできますか?タッチイベントを調べることをお勧めします。 – Taplar

+3

'.on()'を使うと、 'touch 'と' click'ハンドラの両方を同時に使うことができます。 –

+0

ありがとう、私は問題がクリック機能だと思う - 私はそれを考えなかった。 @オビディアンアゲイン私のjqueryの知識は限られています - 私はこれをどのようにしますか?代わりに.click()から.on()に変更するだけですか? – Shtarley

答えて

-2

試してみてください。

この置き換え - この付>jQuery('#gform_next_button_5_85', this).click(function() {

- >$(document).on("click","#gform_next_button_5_85",(function() {

そして、この - この付>jQuery('#gform_submit_button_5', this).click(function() {

を - >$(document).on("click","#gform_submit_button_5",(function() {

質問:

a)Androidデバイス、iOSではどこで問題に直面していますか?

b)実際のデバイスまたはブラウザエミュレータでテストしていますか?

0

ちょうどあなたが何か持っているすべてのコードに置き換えます。私はあなたが「touchend」を追加する必要がありますので、あなたは、iOSデバイスに問題があると思う

jQuery('html').on('click touchend', '#gfrom_next_button_5_85', function() { /*code*/ }); 

:このような何かを持つ

jQuery('#gform_next_button_5_85', this).click(function() { /*code*/ }); 

をイベント。

関連する問題