質問

私は小さなレベルのリッチテキスト編集のために、このIFRAMEの「上」=自分のページ内のIFrameを持っているとのdesignModeを使用しています。

私の関心は、私は、ユーザーがそれに新しい行を入力することはできません必要があるということです - つまり、私はキーを入力制限したい。

私はここに掲載質問がキーの押下を聞くことがを使用してそれをやりましたイベント。しかし、私のKeyPressイベントで、私は場合のfalseを返し、何も起こりません。

どのように私はのdesignModeでiframe内にキーを入力して制限していますか?

コード:

      document.getElementById('editor').contentWindow.addEventListener('keypress',restrictEnterKey, true);

            function restrictEnterKey(event) {
                var key=(event.charCode)?event.charCode:((event.keyCode)?event.keyCode:((event.which)?event.which:0));
                if (key == 13) {
                    //alert('me');
                    return false;
                }
                return true;
            }
役に立ちましたか?

解決

あなたはIEのためpreventDefaultするイベントにreturnValueを呼び出すかfalseを設定する必要があります。

:次の関数は、仕事をします
function preventDefault(evt) {
    if (evt.preventDefault) {
        evt.preventDefault();
    } else if (typeof evt.returnValue !== "undefined") {
        evt.returnValue = false;
    }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top