在标记Magento之前移动JS文件

时间:2016-07-06 17:51:16

标签: javascript html magento

我在我的网站上运行Magento 1.7并试图将JS文件移到我的页面底部。我按照指南将我添加到我的布局文件中:

<reference name="before_body_end">
      <block type="page/html_head" name="foot" as="foot" after="-" template="page/html/foot.phtml">
          <action method="addJs"><script>lib/injectIn.js</script></action>
      </block>
</reference>

这将JS文件移到我网页的所有主要内容之下,但还有其他一些低于它的东西。我想知道是否有办法在结束</body>标记之前将JS文件移动到正确的位置。

例如,我在我的布局文件中有一个块,它在Moved JS文件块下面添加了一些东西:

<block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml">
      <block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
      <block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
</block>

以下是chrome中一些源代码的图片,正如您所看到的那样,在JS文件下面放置了一些内容:

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以调用head部分中的js,就像在body标签之前调用它一样。

使用<reference name="head">

答案 1 :(得分:-1)

您可以通过以下方式使用javascript appendChild函数:

首先获取要追加的元素(在您的案例正文中):

var elBody = document.getElementsByTagName("body");

接下来为你想要附加的html创建容器(在你的case div中使用类&#34; main-container col1-layout容器&#34;)并添加你想要的html:

var newEl = document.createElement('div');

newEl.className += " main-container col1-layout container";

newEl.innerHTML = '<script type="text/javascript" src="url/file1.js"></script>' + '<script type="text/javascript" src="url/file2.js"></script>'

最后一步将元素追加到父元素(正文)中:

elBody.appendChild(newEl);