0

何らかの理由で、このスクリプトはSafariでは機能しません(Windowsでテストされていますが、Macでも発生すると思います)。

$("#searchTerms").focus(function() {
    $(document).keypress(function(e) {
        if(e.which == 13) {
            $("#searchBtn img").click();
        }
    });
});

jsFiddle: http: //jsfiddle.net/ux86V/

スクリプトは、ユーザーが検索ボックスにフォーカスしているときにEnterキーを押すと、画像をクリックすることになっています(このように設定する必要があり、奇妙なサードパーティのサービスに関連付けられています)。

編集:jsFiddleではまったく機能していないように見えますが、機能しているので、スクリプト全体が悪いと思い込まないでください。jSFiddleはリダイレクトを防ぐだけだと思います。たとえば、google.comにリダイレクトするように設定しました。

編集2:それはの問題のよう.click()です。これに代わる方法で使用できるものはあり.click()ますか、それとも要素のクリックを登録する唯一の方法ですか?

編集3:さらにテストした後、jQueryクリックイベントが何らかの理由で正しく機能していないようです。フォームの送信方法と関係があるかもしれませんが、よくわかりません。ライブデモへのリンク:http ://www.weblinxinc.com/beta/blue-sky-marketing/demo/

4

2 に答える 2

0

13は特殊キーであるエンターキーのコードで、キャッチできるのkeyup

于 2012-12-13T15:51:43.200 に答える
0

使ってみてくださいtrigger();

$("#searchTerms").focus(function() {
    $(document).keyup(function(e) {
        if(e.which == 13) { 
            $("#searchBtn img").trigger("click");
        }
    });
});​
于 2012-12-13T16:42:05.557 に答える