Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery设置负顶部动画并返回到0-在第三次单击后开始混乱_Javascript_Jquery_Jquery Animate_Slide - Fatal编程技术网

Javascript Jquery设置负顶部动画并返回到0-在第三次单击后开始混乱

Javascript Jquery设置负顶部动画并返回到0-在第三次单击后开始混乱,javascript,jquery,jquery-animate,slide,Javascript,Jquery,Jquery Animate,Slide,所讨论的地点是: 当您单击其中一篇文章(任何框)时,iframe将从顶部向下滑动,其中包含内容。单击iframe左上角的“主页”按钮后,iframe将向上滑动。这在前2次中效果很好,在第3次单击帖子时,内容会向下滑动,但当单击“主页”按钮时,内容会正常向上滑动,但一旦内容一直向上滑动到它应该所在的位置,iframe会直接向下滑动到单击“主页”按钮之前的位置,我再次单击它,然后它就工作了 下面是我用于向上滑动和向下滑动函数的代码: /* slide down function */ var $

所讨论的地点是:

当您单击其中一篇文章(任何框)时,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;
 })

您是否考虑过在jquery中使用Ajax,如load()、ready()来更好地控制它们

我也不知道你想用这个做什么

var height = $div.height();
$div.css({ height : height });
您可能想要获取当前窗口的高度?你在哪里可以这样得到它

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

另外,请尝试避免使用默认名称(如高度、宽度、div等)命名自定义变量。。。你会把自己弄糊涂,让调试变得很痛苦。

我用了你使用ajax的想法,结果成功了!谢谢你,伙计