テキストが現在の入力幅よりも広い場合、入力タイプのテキストの内容を表示したい。
フィールドにカーソルを合わせると、非表示のテキストを表示するために、テキストを左にスクロールするか、同様の方法でスクロールします。
ありがとうございました。
注: 質問のタグを追加/変更する必要があるかどうか教えてください。
テキストが現在の入力幅よりも広い場合、入力タイプのテキストの内容を表示したい。
フィールドにカーソルを合わせると、非表示のテキストを表示するために、テキストを左にスクロールするか、同様の方法でスクロールします。
ありがとうございました。
注: 質問のタグを追加/変更する必要があるかどうか教えてください。
あ、そんなコメントしたのに。これは自分でも我慢できませんでした。jQuery の使用:
<input type="text" id="txt" value="A very long text goes here very long text goes here very long text goes here very long text goes here very long text goes here indeed."></input>
$('#txt').hover(
function() {
$(this).animate({"scrollLeft": this.scrollWidth}, this.value.length*50)
},
function() {
$(this).stop();
this.scrollLeft = 0;
}
)
ここでは、入力フィールド内のテキストの位置.animate()
をアニメーション化するためにjQueryが使用されています。.scrollLeft
アニメーションの長さはテキストの長さに関係しているため、速度はすべての種類のテキストで同じにする必要があります。マウスが入力コントロールを離れると、スクロール位置が元にリセットされます。
デモ: http://jsfiddle.net/uPGmC/
「input text scroll left」を少しグーグルで検索すると、このような答えが見つかります。ホバーとアニメーションのjQueryドキュメントと組み合わせて、ソリューションを自分でつなぎ合わせます。