javascript - Jquery - 动画高度变化

标签 javascript jquery animation iframe height

我有一个脚本可以根据内容更改 iframe 的高度。脚本本身工作得很好,我只是想知道是否有一种方法可以对高度变化进行动画处理,以便当 iframe 从 200px 变为 1000px 时它不会那么笨重?这是我到目前为止的代码,它工作正常,我只需要向它添加动画。谢谢您的帮助。

window.setInterval(function(){
    $("iframe.flexht").each(function() {
        $(this).height( $(this).contents().find("html").height() );
    });
}, 500);

最佳答案

此示例取自http://api.jquery.com/animate/

$( "#book" ).animate({
  opacity: 0.25,
  left: "+=50",
  height: "toggle"
}, 5000, function() {
  // Animation complete.
});

基本上,您不是直接设置高度,而是将其应有的值传递给动画函数。然后,animate 函数将在内部调用 requestAnimationFrame 函数,以便随时间更改该值。 https://developer.mozilla.org/en-US/docs/Web/API/window.requestAnimationFrame

给出的第二个参数(5000)是动画的时间量(以毫秒为单位)。所以 5000 将持续 5 秒。该参数是可选的。

您可以通过给定缓动字符串来告诉 animate 函数以不同的方式设置动画。并非所有缓动都在 jQuery 中受支持,但您可以尝试此处列出的一些缓动:http://api.jqueryui.com/easings/

最后,示例中的空函数是动画结束时将被调用的函数。该参数也是可选的。

关于javascript - Jquery - 动画高度变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27712910/

相关文章:

javascript - 如何控制 Node 回调的范围?

javascript - JQuery:将 div 附加为 var 类

jquery - 在 <div> 元素中创建一个洞

javascript - "Error getting audio"使用Recorder.js 录音

android - 上下 move ImageView 的动画

javascript - JavaScript 中的多线程或异步代码如何工作?

javascript - 单击以关闭菜单 - 多个实例

javascript - 如何设置动画定位固定 :before selector With jQuery

css - 悬停动画时自动淡出和淡入

c# - 使用 C# 禁用窗口的动画效果