【问题标题】:Animate iframe content with jquery使用 jquery 为 iframe 内容设置动画
【发布时间】:2015-10-20 08:18:32
【问题描述】:

我在网络应用程序中动态设置 iFrame 的内容。是的,很遗憾需要使用 iFrame:) 不使用跨域内容

我能够设置内容,在 iframe 中查找元素等。但现在我想为 iframe 中的一些元素设置动画。在应用程序中,我没有收到任何错误消息,fadeIn(1000)、fadeOut(1000) 和 animate 根本没有做任何事情。该应用程序的架构会很复杂,无法在小提琴中重新创建,但我正在执行以下操作。

将 iframe 添加到站点,等待 iframe 加载,访问内容并将 jquery 附加到 iframe 的头部:

head.append($('<script type="text/javascript" charset="utf-8" async="" data- requirecontext="_" data-requiremodule="jquery" src="/assets/js/vendor/jquery-2.1.3.min.js"></script>'))

这是一个小小提琴,我试图将其分解,但 jsfiddle 不允许我在 JS 窗口中编写 html,所以我无法让附加部分工作。

https://jsfiddle.net/MacG/Lnwx8seg/7/

甚至可以在 iframe 中的元素上使用 jquery 方法和动画吗?

编辑:

我已经设法在 @P 之后的一个简单的 jsfiddle 中为元素设置动画。坦率的回答。然而,尝试在更复杂的 iframe 环境中为元素设置动画失败,如更新后的小提琴所示:

https://jsfiddle.net/MacG/5ryLdnLz/1/

(嗯,我想这有点用,但是速度很慢而且不稳定,所以它看起来根本不像动画。有时元素会在动画结束时消失,根本没有任何褪色。

关于如何在这样的 iframe 环境中获得流畅的动画效果有什么想法吗?

【问题讨论】:

    标签: javascript jquery iframe jquery-animate


    【解决方案1】:

    试试这个。工作正常

    https://jsfiddle.net/95b6ezkv/

    $(header).animate({
        opacity: 0.25
      }, 5000, function() {
        // Animation complete.
    });
    

    【讨论】:

    • 谢谢这确实有效,但是我的用例仍然存在问题。我更新了问题
    • 原来我的 iframe 架构太深了,经过一些优化后效果很好:)
    猜你喜欢
    • 2018-03-08
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多