2016-10-05 3 views
1

- Firefoxの上で、それはこのようになります一方、私もこの文字を識別することができない、とChrome上で、それは目に見えないですこの文字は何ですか "" JavaScriptは入力に挿入されますか?すでに解決


にお答え参照してください。this

この文字が挿入されていますon.keydown入力を表示にフェードインし、英数字を押して挿入し、英数字の後にカーソルを置くと、HTML入力フィールドに移動します。

これはfromCharCode(e)

 $searchtext.val(String.fromCharCode(e).toLowerCase()) 
     .setCursorPosition($searchtext.val().length); 
     $search.fadeIn(200); 

eあるんメインコードはkeyCharを押すと、パラメータとしてJS関数に渡され、それは場合に役立ちます(私はコード全体を表示することができますが、私は考えていないです問題はコードのブロック以外で発生しています)。

// extending the jQuery prototype with setCursorPosition 
$.fn.setCursorPosition = function(pos) { 
    this.each(function(index, elem) { 
    if (elem.setSelectionRange) { 
     elem.setSelectionRange(pos, pos); 
    } else if (elem.createTextRange) { 
     var range = elem.createTextRange(); 
     range.collapse(true); 
     range.moveEnd('character', pos); 
     range.moveStart('character', pos); 
     range.select(); 
    } 
    }); 
    return this; 
}; 

EDIT あなたが質問のタイトルでわかるように、文字もスタック上で使用することはできません。

setCurrentPosition()は、このようなFUNCです。スタックの質問にFirefoxのそれをここにコピーすると表示されますが、保存するまでのみ表示されます。私が質問を原稿として残し、ChromeでStackを開いた場合、文字は " "に置き換えられます

+3

「e」は* keydown *イベントオブジェクトではありませんか? – Phil

+0

Doh!あなたは絶対に正しいです、 'e'はイベントで、' String.fromCharCode(e.which) 'を使用しています。あなたが答えとして提出すれば、私は正しいことをマークします。ありがとうございました。 –

+1

あなたはおそらくこの質問を削除するべきです*この問題は、もはや再現できない問題やシンプルな誤植によって引き起こされました。*また、私たちの一部がすでに解決していることを知る人もいます。 – DelightedD0D

答えて

0

@Philは私の質問のコメントで指摘したとおり、イベントのkeyCode charではなくeイベントを使用していましたe.which

これで、挿入されている文字がJSオブジェクトの表現であると仮定しています。

関連する問題