如何在 PHPBB3 Teamplate 中动态添加 <脚本> 标签

how to add <script> tag dynamically in phpbb3 teamplate?

本文关键字:脚本 标签 添加 动态 PHPBB3 Teamplate      更新时间:2023-09-26

我正在使用phpbb3作为我的电路板解决方案,我已经制作了内容页面等..所有这些都使用与phpbb的集成,现在我想将来自Google Adsense的代码添加到我的页面..为此,我在phpbb3/styles/prosilver/templates overall_header.htm文件中使用了以下脚本

    <script type="text/javascript">
    // <![CDATA[
    $(document).ready(function(){
    $("<!-- INCLUDE ad.html -->").insertAfter(".column1 > ul");
    $("<!-- INCLUDE ad.html -->").insertAfter(".column1");
    });
    // ]]>
    </script>

我在 ad 中有添加代码的地方.html ,并且选择器是这样的,可以将代码放在适当的位置。

但不知何故,phpbb 将其读取为 XML,而不是执行脚本,它以文本形式显示它......并且还执行"部分并显示我放置脚本的广告。

http://tutorialfrenzy.com/how-to-block-a-website.php

你可以在那里看到它。我试过使用

         <script type="text/javascript">
         // Use any event to append the code
          $(document).ready(function() 
         {
          var s = document.createElement("script");
          s.type = "text/javascript";
          s.src = "http://scriptlocation/das.js";
         // Use any selector
         $("head").append(s);
        });

它没有帮助..有什么建议吗?

编辑:

我也使用了jquery getscript方法

<script type="text/javascript">
  $.getScript("chitikaad.js", function(){
   alert("Running test.js");
   });
    </script>

正如您所指出的,包含在 js 文件中不起作用。 尝试将其更改为此...

$(document).ready(function(){
    $.ajax({
        url: "ad.html",
        success: function(data) {
            $(data).insertAfter(".column1 > ul");
            $(data).insertAfter(".column1");
        }
    });
});

使用$.getScript()时不需要<script>标签,可能不需要document.ready(),但它没有坏处,因为我还没有看到你的整个项目,所以拥有它总比没有它好(它确实运行代码,即使文档之前已经加载过。

顺便说一句,如果您可以将脚本添加到主页,那么您不需要$.getScript()。 只需在主页中包含上述脚本,它就会为您加载广告.html。 显然,如果 chitikaad 中还有其他代码.js请按原样继续加载它。