2012-03-27 7 views
1

オーバーフローしたテキストを表示するためにスクロールする必要があります。オーバーフローしたテキストを表示にスクロール

私はそのテキストインデントをアニメーション化しようとしましたが、正しいピクセル量をアニメーション化する必要があります。それをどのように計算するのですか?

参照:http://jsfiddle.net/wqRcK/5/

私が試したように私は、「全幅」、唯一のビューにテキストをスクロールする必要はありません。

span.titleは10ピクセルのパディングをどのように尊重しますか?あなたinline-blockからspan
"-" + ($(this).width() - $(this).parent().width()) + "px"にそれをアニメーション化

+0

200px - スパンの幅は、それを与えるべきですか、それとも私はそれを誤解しましたか? – slash197

+1

これは、ユーザビリティの理由から大きく使用される可能性のある興味深い効果です。それに対して+1。 –

答えて

5

セット:

div.box span.title { white-space: nowrap; display: inline-block; } 
$(document).ready(function() { 
    var boxwidth = $("div.box").width(); 
    $("span.title").hover(
     function() { 
     $(this).stop().animate({ 
      textIndent: "-" + ($(this).width() - $(this).parent().width()) + "px" 
     }, 1000); 
     }, 
     function() { 
     $(this).stop().animate({ 
      textIndent: "0"   
     }, 1000); 
     } 
    ); 
}); 

ここでは、あなたのフィドルである:http://jsfiddle.net/wqRcK/20/


P.S.セレクタを常にキャッシュすることを忘れないでください。ジョセフの答えを完了するために、

関連する問題