私が欲しいもの:
ページが読み込まれると、ビューポートのサイズに関係なく、要素は非表示になります。一定時間後、要素を飛ばしてもらいたい。
私がこれまでに持っているもの: このコード(http://jsfiddle.net/LdfZw/1/):
HTML
<div id="div1">
<p>Lorem ipsum</p>
</div>
CSS
#div1 {
margin-left: 10%;
}
jQuery
var tenPercent = $( window ).width()*0.1;
$('#div1').css('margin-left',-tenPercent);
setTimeout(function() {
$ ('#div1').animate({marginLeft : tenPercent},1000 );
}, 1000 );
問題:
実際、このコードには複数の問題があります。
- 小さいウィンドウサイズでは機能しません(フィドルを参照)、なぜですか?
- 要素がフライインした後にウィンドウのサイズが変更された場合、左マージンはもちろん新しいウィンドウサイズの10%ではありません。それに対する解決策はありますか?適用
.css("margin-left","10%");
は少し冗長に思えます。多分何かでresize();
?
どんな形でも助けていただければ幸いです。
</ p>