【问题标题】:Load an anime.js animation html file as a background to a section in HTML加载一个anime.js动画html文件作为HTML部分的背景
【发布时间】:2018-08-10 15:19:09
【问题描述】:

我正在尝试使用这个anime.js 文件作为网站横幅的背景。这里

<section id="banner">
  <div class="inner">
    <div class="logo">
      <span class="icon fa-diamond"></span>
    </div>
    <!-- Animation Script -->
    <!--
      <script>
        document.getElementById("banner").innerHTML = '<object type="text/html" data="animation/index.html"></object>';
      </script>
    -->
    <h2>TEXT</h2>
    <p>MORE TEXT</p>
  </div>
</section>

我正在加载这样的脚本,但问题是它完全替换并加载了inner div。我应该如何让它加载到整个部分?我也希望内部 div 完好无损。

【问题讨论】:

  • 您需要一个元素来放入它,以及一个您不想想要放入的元素。(您可以在其中包含 2 个部分或 2 个 div 1 节。)

标签: javascript jquery html anime.js


【解决方案1】:

问题是因为您完全覆盖了 #banner 元素的 HTML,并完全清除了其现有内容。

要解决此问题,请单独创建 object 元素,然后使用 appendChild() 将其添加到 #banner 元素:

var obj = document.createElement('object');
obj.type = 'text/html';
obj.data = 'animation/index.html';
document.getElementById('banner').appendChild(obj);
<section id="banner">
  <div class="inner">
    <div class="logo">
      <span class="icon fa-diamond"></span>
    </div>
    <h2>TEXT</h2>
    <p>MORE TEXT</p>
  </div>
</section>

【讨论】:

  • 您好,谢谢您的回答,但它只解决了我的一半问题。附加此 html 将文件添加到内部 div 下方,我想将内部 div 加载到 html 文件的顶部。动画在 div 下方而不是在其后面加载。
  • 简单地说我想重叠这些div。
  • 在这种情况下,这是您需要使用的 HTML 和 JS,您只需使用 CSS 将 #banner 设置为 position: relative 并将两个包含的元素设置为 position: absolute; top: 0
猜你喜欢
  • 2012-01-25
  • 2022-11-15
  • 2016-09-05
  • 2020-08-10
  • 1970-01-01
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 2018-11-19
相关资源
最近更新 更多