2
    <script type="text/javascript">
        $(".recaptchaButton").click(function(event) {
            var recaptchaHidden = true;
            if (recaptchaHidden == true) {
                event.preventDefault();
                $(".recaptcha").css("display","block");
                recaptchaHidden = false;
            }
        });
    </script>

event.preventDefault(); の理由がわかりません。上記のスクリプトでは機能しません。より広い画像が必要な場合は、buybluesky.com の Web サイトにあります。コードは私にはまったく問題ないように見えます。

4

1 に答える 1

4

動作の内容によっては、伝播を停止することもできます。デフォルトのブラウザー動作をトリガーしていない可能性がありますが、実際には DOM を介して別のハンドラーにイベントを渡しています。私はいつもreturn falseその場で止めたいイベントから。

e.stopPropagation()これはANDと同等ですe.preventDefault()

明確にするために: JavaScript のイベント ハンドラーから、コールバックが false を返すと、バブリングが停止し、デフォルトの動作 (フォーム送信またはアンカー href に続く) が防止されます。

于 2013-04-12T19:27:14.400 に答える