如何使用document.getElementById()添加广告?

时间:2015-08-11 05:48:12

标签: javascript php adsense

我的ID为" ad"。我想在用户满足条件时使用JavaScript在其中添加adsense广告。基本上,当用户满足特定条件时,将显示广告。

这是我的代码:

if ($resultTot = $db->query($queryTot)) 
    {
        $data = $resultTot->fetch_assoc();

     if($data["total"]>1)
        {
                echo "<script>
                    document.getElementById('ad').innerHTML = 'async src='//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js'
<!-- YC2 ads -->
<ins class='adsbygoogle'
     style='display:block'
     data-ad-client='ca-pub-4557496244647182'
     data-ad-slot='4151529047'
     data-ad-format='auto'></ins>

(adsbygoogle = window.adsbygoogle || []).push({});

                </script>";


     }
  }

当我使用document.getElementId()来改变让我们说一个p标签时,它可以工作。我无法获得显示的adsense。关于我如何在其中添加它以及为什么我的代码不起作用的任何想法?

1 个答案:

答案 0 :(得分:0)

您只需要打印常规的AdSense JS代码。无需使用JS获取任何元素。

目前您只是编辑#ad DOM元素的内容。这样做是不可行的,因为它必须是<script>而不是它内部。 src是属性。

它必须像这样结束

<script async src='//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js'></script>

所以,请使用:

if ($resultTot = $db->query($queryTot)) 
{
  $data = $resultTot->fetch_assoc();

  if($data["total"]>1)
  {
    echo "
    <div id='ad'>
      <!-- YC2 ads -->
      <ins class='adsbygoogle'
           style='display:block'
           data-ad-client='ca-pub-4557496244647182'
           data-ad-slot='4151529047'
           data-ad-format='auto'></ins>
      <script>
      (adsbygoogle = window.adsbygoogle || []).push({});
      </script>
    </div>
    <script>
      var script = document.createElement('script');
      script.async = true;
      script.src = '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
      document.getElementById('ad').appendChild(script);
    </script>
    ";
  }
}