0

問題のサイトは次のサイトです。

http://www.pickmixmagazine.com/wordpress/

投稿の 1 つ (ボックスのいずれか) をクリックすると、iframe がコンテンツと共に上から下にスライドします。iframe の左上隅にある [ホーム] ボタンをクリックすると、iframe がスライドして戻ります。これは最初の 2 回は完全に機能し、投稿の 3 回目のクリックでコンテンツが下にスライドしますが、ホーム ボタンをクリックすると、コンテンツは通常どおりスライドしますが、その位置まで完全にスライドすると、 iframe は、ホーム ボタンがクリックされる前の場所にまっすぐに戻ります。もう一度クリックすると、機能します。

スライドアップ機能とスライドダウン機能の両方に使用したコードは次のとおりです。

/* slide down function */

var $div = $('iframe.primary');
var height = $div.height();
var width = parseInt($div.width());
$div.css({ height : height });
$div.css('top', -($div.width()));


$('.post').click(function () {
      $('iframe.primary').load(function(){
            $div.animate({ top: 0 }, { duration: 1000 });
      })

      return false;
 });


 /* slide Up function */

 var elm = parent.document.getElementsByTagName('iframe')[0];
 var jelm = $(elm);//convert to jQuery Element
 var htmlElm = jelm[0];//convert to HTML Element

 $('.homebtn').click(function(){
      $(elm).animate({ top: -height }, { duration: 1000 });

      return false;
 })
4

1 に答える 1

0

jqueryでload()、ready()などのAjaxを使用して、それらをより適切に制御することを検討しましたか?

また、これで何をしようとしているのかもわかりません。

var height = $div.height();
$div.css({ height : height });

現在のウィンドウの高さを取得したい場合がありますか?この方法で入手できる場所

var $dDiv = $('iframe.primary');
var innerH = window.innerHeight;
$dDiv.height(innerH);

また、height、width、divなどのデフォルト名でカスタム変数に名前を付けることは避けてください...混乱し、デバッグが面倒になります。

于 2012-10-20T10:57:26.290 に答える