2011-09-18 6 views
0

私はいつもjavascriptで吸っています。私は複数の本を読んでオンラインで学んだことがありますが、仕事に就かせることはできません。カーソルがそのフィールドの上に、もはやになると、私はそのアクションを元に戻すんですかシンプルなjavascript mouseoutはハイライトテキストを元に戻す

<input type="text" onMouseOver="this.focus();this.select()"> 

:とにかく、私はそれを置くと、テキストフィールド内のすべてのテキストを選択し、簡単なJavaScript関数を使うのか?これは重要なことです。新しいBlackBerry Bold 9930を購入してインターネットのブラウジングを嫌っていますが、javascriptを使用して、フィールド上のすべてのテキストを強調表示するような簡単な操作をしています。それで、ブラックベリーブラウザでは、どこか別の場所をクリックしない限り、そのフィールドに固執してテキストを強調表示しているので、すべてのテキストを選択解除するコードが必要です。ありがとう。

+0

私は以前のフォーカスされたオブジェクトの参照を選択し、onmouseoutはそのオブジェクトに対してfocus()メソッドを使うべきだと思います。 –

+0

ありがとう、私にはjavascriptの用語ではよくないので、コードを表示してください –

答えて

0
<input type="text" onMouseOver="this.focus();this.select()" onmouseout="this.selectionStart = this.value.length; this.blur();"> 

http://jsfiddle.net/meQek/

あなたがそれについて考えるとき、それは奇妙な方法が、論理のようなものです。それをmouseenterですべてハイライトすると、selectionEndが最後にあります。そのため、selectionleartをmouseleaveの同じ位置にしてください。

EDIT:

実際

...ブラーはうまく動作します:P

http://jsfiddle.net/meQek/1

<input type="text" onMouseOver="this.focus();this.select()" onmouseout="this.blur();"> 
+0

これはブラウザでうまくいくので正しいです。残念ながら、それはBlackBerryのために働かない。私はマウスオーバーしたときに領域を選択しますが、マウスオーバーしてもハイライトされたままです。新しいブラックベリーがすべてのJavascript機能をサポートしているようだが、これは奇妙だ。 –

0

はこれを試してみてください:ブラックベリーのブラウザがどのように処理するかを

<input type="text" onMouseOver="this.focus();this.select()" onmouseout="this.blur();"> 

わかりませんほとんどのブラウザでは、マウスが離れるときにテキストフィールドのフォーカスを外す必要があります それ。