使用jquery将javascript添加到html页面中

我想添加一个JavaScript的谷歌广告,但我不能插入JavaScript使用jQuery的div。 我尝试用这个测试来模拟我的问题,它使用了我在stackoverflow上发现的一些建议,但它不起作用。

我想要在div中插入<script type='text/javascript'>document.write('hello world');</script> ,并在tag_1和tag_2之间显示“hello world”。

代码如下:

<html>
    <head>
      <script type="text/javascript" src="jquery.js"></script>
      <script type="text/javascript">
         $(document).ready(function() {
         var str="<script type='text/javascript'>document.write('hello world');";
         str+="<";
         str+="/script>";

         $('#insert_here').append(str);
         });
      </script>
    </head>
    <body>
      tag_1<br/>
      <div id="insert_here">
      </div>
      tag_2<br/>
    </body>
</html>

坦克为你的答案,

卢卡斯


我想出了一个很好的解决方案:

  • 将Google Adsense代码插入网页的任何位置 - 例如,如果您的CMS只允许您将其放在右侧,然后将其粘贴在那里。
  • display:none样式包围div
  • 添加一些jQuery代码来移动div到你想要的位置。
  • 由于JavaScript已经运行,所以将脚本块移到任何你想要的地方都没有问题。

    例如,如果您希望在您的博客中散布2块谷歌广告(比如在第1段和第4段之后),那么这是完美的。

    以下是一些示例代码:

    <div id="advert1" style="display:none">
    <div class="advertbox advertfont">
        <div style="float:right;">
            <script type="text/javascript"><!--
            google_ad_client = "pub-xxxxxxxxxxxxxxxxx";
            /* Video box */
            google_ad_slot = "xxxxxxxxxxxxxxxxx"
            google_ad_width = 300;
            google_ad_height = 250;
            //-->
            </script>
            <script type="text/javascript"
            src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
            </script>
        </div>
    </div>
    </div>
    
    <script>
    $(document).ready(function() {
    
    $('#advert1').appendTo("#content p:eq(1)");
    $('#advert1').css("display", "block");
    
    });
    </script>
    

    ps#内容恰好是内容在我的CMS(Squarespace)上启动的位置,因此您可以使用CMS中的任何内容替换它。 这是一种享受,不会破坏Google ToS。


    看到我的答案是动态插入的<script>标签意味着工​​作? 为什么你不能使用innerHTML(当jQuery的函数传递一个HTML字符串时)映射到插入脚本元素。 document.write在文档被完全解析后使用时也会失败。

    要解决这个问题,你将不得不使用DOM函数将元素插入到div中。 Google广告是iframe,因此通常是寻找iframe代码并附加代码。


    要正确插入脚本元素,您需要使用DOM函数,例如:

    var txt = 'alert("Hello");';
    var scr = document.createElement("script");
    scr.type= "text/javascript";
    
    // We have to use .text for IE, .textContent for standards compliance.
    if ("textContent" in scr)
        scr.textContent = txt;
    else
        scr.text = txt;
    
    // Finally, insert the script element into the div
    document.getElementById("insert_here").appendChild(scr);
    

    页面加载完成后,您无法使用document.write 。 相反,只需插入您想要写入的内容即可。

    <script type="text/javascript">
         $(function() { // This is equivalent to document.ready
             var str="hello world";
             $('#insert_here').append(str);
         });
    </script>
    
    链接地址: http://www.djcxy.com/p/73445.html

    上一篇: add javascript into a html page with jquery

    下一篇: can't identify the error in java program