Добавить javascript на html-страницу с помощью jquery

Я хочу добавить объявление gavascript google, но я не могу вставить javascript в div с помощью jquery. Я пытаюсь смоделировать мою проблему с помощью этого теста, который использует несколько советов, которые я нашел по stackru, но он не работает.

я хочу <script type='text/javascript'>document.write('hello world');</script> быть вставленным в div, и "tag hello world" будет отображаться между tag_1 и tag_2.

Вот код:

<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>

Танки за ваши ответы,

Лукас

3 ответа

Решение

Я нашел отличное решение:

  1. Вставьте свой код Google Adsense в любое место на своей странице - например, если ваша CMS позволяет вам размещать его только справа, вставьте его туда.
  2. Оберните вокруг него div display:none стиль
  3. Добавьте код jquery, чтобы переместить div в нужное место.

Поскольку javascript уже запущен, проблем с перемещением блока сценария туда, где вы хотите, нет.

Например, если вы хотите разместить 2 блока рекламы Google по всему блогу (например, после пункта 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 #content находится там, где начинается контент на моей CMS (Squarespace), так что вы можете заменить его тем, что есть в вашей CMS. Это работает удовольствие и не нарушает Google ToS.

См. Мой ответ на вопрос Работают ли динамически вставленные теги