【问题标题】:Include Adsense on specific pages在特定页面上包含 Adsense
【发布时间】:2017-06-21 19:12:10
【问题描述】:

我有一个 Adsense 代码 sn-p 如下所示,我只想将其包含在 body 标记具有 class"category" (body class="category") 的页面上,并且我想将其放在 @ 之前987654325@叫test(.test)

为此,我正在考虑使用:

  if ($("body").hasClass("category")) {

  } 

但是,我是一个 JS 新手,我遇到了两件事:

  1. 如何在 div 调用测试之前显示该 adsense 块(下面的代码) (.test)
  2. 如果页面有任何其他class,我需要那个adsense 代码从页面中消失了。

这是adsense的代码

  <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
  <ins class="adsbygoogle"
       style="display:block"
       data-ad-client="ca-pub-641651684125955"
       data-ad-slot="84616945153"
       data-ad-format="auto"></ins>
  <script>
  (adsbygoogle = window.adsbygoogle || []).push({});
  </script>

我不是以英语为母语的人,但我试图以最好的方式解释它。

【问题讨论】:

    标签: javascript jquery adsense


    【解决方案1】:

    试试这个

    • 我将template literals 用于ins 代码

    • 我测试在 class 语句中只有一个类,“类别”,没有其他类 - 你也可以使用 classList 并计算它们


    if ($("body")[0].className=="category") { 
       $(".test").before(`<ins class="adsbygoogle"
           style="display:block"
           data-ad-client="ca-pub-641651684125955"
           data-ad-slot="84616945153"
           data-ad-format="auto"></ins>`);
        var s = document.createElement("script");
        s.type = "text/javascript";
        s.src = location.protocol+"//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js";
        $("head").append(s);
       (adsbygoogle = window.adsbygoogle || []).push({});
    });
    

    【讨论】:

    • 追加调用时没有撇号。此外,您需要使用问题中指定的 $(".test").before 而不是追加。最后,您需要处理 body 具有类别类但也具有另一个类的情况。我恳请您相应地编辑您的答案。
    • 你说得对,我不知道这种语法,感谢您指出这一点。这澄清了第一个问题,但没有澄清第二个问题,也没有澄清第三个问题。
    • 您需要一个 .测试前
    • hasClass 如果类是“category somethingelse”,则为真。并且问题似乎要求我们在这种情况下不要添加 AdSense,只有当 class="category."
    • 如果这个答案也没有解决这个问题,我不能赞成这个答案。我的回答处理了它。
    【解决方案2】:

    这应该是解决方案。

      if ($("body").hasClass("category")) {
          $(".test").before('  <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> ' +
      '<ins class="adsbygoogle" ' +
           'style="display:block" ' +
           'data-ad-client="ca-pub-641651684125955" ' +
           'data-ad-slot="84616945153" ' +
           'data-ad-format="auto"></ins> ' +
      '<script> ' +
      '(adsbygoogle = window.adsbygoogle || []).push({}); ' +
      </script>');
      } 
    

    如果您想在给定的class 存在时阻止这种情况,但还有另一个class,请更改您的if

    if (document.getElementsByTagName("body")[0].class === "category") {
        //...
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-13
      • 1970-01-01
      • 2016-01-07
      • 1970-01-01
      • 2012-10-08
      • 1970-01-01
      • 2015-01-23
      相关资源
      最近更新 更多