HTML:
<div id="Header">
<div id="HeaderTitle">
This is a very long title which should should force HeaderTitle to expand.
</div>
</div>
JavaScript:
$(document).ready(function() {
$('#HeaderTitle').mouseover(function(e) {
var distanceToMove = $(this).width() - $('#Header').width();
var timeToTakeMoving = 30 * distanceToMove;
$(this).animate({
marginLeft: "-" + distanceToMove + "px"
}, timeToTakeMoving);
}).mouseout(function(e) {
$(this).stop(true).animate({
marginLeft: "0px"
});
});
});
JSFiddle: http: //jsfiddle.net/QQtp6/7/
div'HeaderTitle'を展開して、その中にテキストを保持したいと思っています。これにより、マウスオーバーでテキストをスクロールできるようになります。divがその内容を保持しないのはなぜですか?
編集:ここでの目標は、すべてのテキストを表示しないことです。テキストの一部を固定幅のdivに表示してから、そのdivでテキストをスクロールしたいと思います。
例:
テキストが「FULLTEXTHERE」の場合、マウスオーバーするまで「FULLTE」のみが表示されると思います。その時点で、FULLがLHSに隠された状態で「TEXTHERE」に移行することを期待します。
EDIT2:解決策は、HeaderTitleにdivの代わりにspanを使用することだと思います。一瞬。
EDIT3:投稿されたソリューション