【问题标题】:Detecting animation complete from parent iframe从父 iframe 检测动画完成
【发布时间】:2011-12-15 21:46:59
【问题描述】:

我有以下代码:

主要 HTML 文档

  $(function(){              
    $("#i").load(function(){
      var $iframeContents = $(this).contents(),
          $a = $iframeContents.find('#click-me'),         
          $box = $iframeContents.find('#box');         

      $a.click(function(){
        $("#i").animate({height: $box.height(), width: $box.width()})
      });                 
    });       
  });          
<iframe id="i" src='in-frame.html'></iframe>      

IFRAME 文档

  <h1><a id="click-me" href="#">Click Me</a></h1>
  <div id="box">   
  </div>                                                                                                                  
  <script>
  $(function(){                         
    $("#click-me").click(function(){
       $("#box").animate({height: "400px", width: "400px"});
    });
  })
  </script>     

在 in-frame.html 文档中有动画 #box div 的 js。我想等动画完成后再调用$("#i").animate({height: $box.height(), width: $box.width()})

我觉得我应该以某种方式收听该事件,但我不确定该怎么做。

注意:它们都在同一个域中。

【问题讨论】:

    标签: javascript jquery html iframe


    【解决方案1】:

    .animate( 属性 [, 持续时间] [, 缓动] [, 完成] )

    properties:动画将移动的 CSS 属性的映射 往。

    duration:一个字符串或数字,确定动画将持续多长时间 运行。

    easing:一个字符串,指示要使用哪个缓动函数 过渡。

    complete:动画完成后调用的函数。

    来源:http://api.jquery.com/animate/

    使用回调函数。

    【讨论】:

    • 这里的关键是:来自 iframe(父级)
    • 调用父文档中的函数在这里不起作用。我需要能够从主文档中检测动画何时完成。不确定您的答案提到了什么,但似乎不正确。
    • 在您的 iFrame 中设置完成动画的回调函数。回调函数调用主文档中的函数。此函数“检测”动画完成并处理您的页面处于或需要处于的任何情况。也许它设置了一个由 setTimeOut 检查的变量然后清除超时,或者它启动超时然后清除它完成后。对于这样一个模糊的场景,你真的没有给我太多 - 只要你正确实施它,所提供的答案就会起作用。
    • 函数 IMDONE(){$("#i").animate({height: $box.height(), width: $box.width()});}
    • 我给了你很多工作,问题是直截了当的。我需要从父“MAIN HTML DOCUMENT”中完成这一切。 SetTimeout 将不起作用,因为我不知道每次动画何时结束。我需要一个更通用/动态的解决方案。因此提到在子“IFRAME DOCUMENT”中检测#box 的动画完成。
    猜你喜欢
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多