3

私はこのjsFiddleを持っています:http://jsfiddle.net/RGmNz/6/

そして、 CTRL+BCTRL+Uなどを無効にしようとしました...

          $("iframe").contents().find("body").keydown(function(a,b){

                if(a.which ==32 && a.ctrlKey){
                    a.preventDefault(); 
                   }
            });
        })

しかし、それでもテキストは太字になっています。

4

2 に答える 2

3

あなたがする必要があるのはreturn false;、キーコードのことで、特定のイベントを無効にしようとするとき、単にfalseを返し、すべてが起こらないようにする必要があることを常に見つけました。(それはあなたのためにpreventDefault&stopPropogationを行います)

また、これに気づきました:キーコード番号に関する情報

    // you want to do 66 (B)
    // with && since you're looking for both events simultaneously

    if (a.which === 66 && a.ctrlKey) {  
       return false;
    }

jsFiddleデモ

于 2012-08-23T14:07:23.760 に答える
3

これは、次の2つの変更を行った場合に機能します。(1)bに適切なキーコード(32ではなく66)を使用し、(2)次の呼び出しを追加します.stopPropagation()

if (a.which == 66 && a.ctrlKey) {
    a.preventDefault();
    a.stopPropagation();
}

デモ: http: //jsfiddle.net/RGmNz/7/

または、との両方にreturn false相当するものを使用できます。.preventDefault().stopPropagation()

于 2012-08-23T14:12:54.893 に答える