質問

jQueryアニメーションをCookieでセッションごとに1回だけ実行したいと思います。 Klaus HartlのCookieプラグインでこれを行う方法を考え出しましたが、ページが2回目と呼ばれると、要素が点滅します。 $ .fx.offはjqueryをアニメーションの終了状態にジャンプさせることになっているという印象を受けていますが、要素が一時的にフラッシュするのは、それはただ終了状態にジャンプするだけでなく、アニメーションを通して再生するだけです本当にすぐに。ブラウザが終了するとクッキーが脱落し、アニメーションが再び再生されます。それが私が起こりたいことです。アニメーションをセッションごとに一度再生したいだけです。 Cookie Switch CSS状態を作成する方法について、オンラインでいくつかの優れたチュートリアルを見つけることができますが、jqueryアニメーションが実行されないようにして、最終状態が表示されるようにするだけのものが必要です。

これが私のテストページです:

http://ianmartinphotography.com/test-site/index-cookies-04.html

これが私のコードです:

<script type="text/javascript">
var welcome=$.cookie('welcome'); if(welcome == 'ran') {$.fx.off = !$.fx.off;}; 
</script>


<!--slider-->
<script type="text/javascript">
$(window).load(function(){$(".imwpj")
.animate({"top": "+=200px"}, 0)
.fadeIn(2000).delay(200).animate({"top": "+=295px"}, 1100, function() {
$('#sub-fader').fadeIn(1500); });
$.cookie('welcome', 'ran');
}); 
</script>

どんな考えも素晴らしいでしょう!ありがとう!

役に立ちましたか?

解決

var welcome=$.cookie('welcome'); 
 $(window).load(function(){
  if(welcome != 'ran') {
     $(".imwpj")
     .animate({"top": "+=200px"}, 0) // this is not necessary, you can use css("top", "200px")
     .fadeIn(2000).delay(200).animate({"top": "+=295px"}, 1100, function() {
     $('#sub-fader').fadeIn(1500); });
     $.cookie('welcome', 'ran');
  } else {
     $(".imwpj").css("top", "495px");
     $("#sub-fader").css("display", "block");  //or .show();
  }
 });

なぜこれが好きではないのですか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top