我有一个包含adsense广告的div。但是,如果有一个类,我想删除div。
<div id=bannerad>
... adsense ad ...
</div>
$(document).ready(function(){
if ($('.back').is(":visible") == true)
$( "#bannerad" ).remove();
});
实现这一目标的最佳方法是什么。它会通过.remove()
使用jQuery,因为使用display:none
通过css是针对google t + c的。
谢谢,
答案 0 :(得分:4)
$('.back:visible').remove();
使用CSS
display:none
您无法将其删除,只需隐藏它即可。
如果您使用$('.back:visible').hide()
/ $('.back:visible').css('display', 'none');
您可以使用$('.back:visible').show()
来展示它。但是,通过.remove()
,您无法再显示它。
答案 1 :(得分:3)
请勿更改Google Adsense代码段
根据Google Adsense服务条款,不允许操纵他们的代码段。它也不允许通过IFRAME展示广告或使用JavaScript和Ajax来展示或隐藏Adsense广告。但是,只要您愿意,就可以排除整个Adsense代码段。另一种选择是使用DFP广告管理系统等广告服务器,DFP广告管理系统是免费的Google服务,我在某处读到可以选择过滤特定国家/地区的广告。
将div放在Google广告周围,如下所示:
<div id="GoogleAds1">
<script type="text/javascript"><!--
google_ad_client = "pub-xxxxxxxxxxxxxx";
google_ad_host = "pub-xxxxxxxxxxxxxxx";
/* 300x250, created 1/31/10 */
google_ad_slot = "xxxxxxxxxx";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript">
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<script type="text/javascript">
var Ads1 = document.getElementById('GoogleAds1');
Ads1.parentNode.removeChild(Ads1);
</script>
在帖子末尾添加javaScript,您的Google广告将隐藏在该特定帖子中。
所以你想知道的所有答案
答案 2 :(得分:0)
显然允许使用此代码:
<style>
.responsive-test { display: block;}
@media(max-width: 480px) { .responsive-test { display: none; } }
</style>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- Resposive_TEST -->
<ins class="adsbygoogle responsive-test"
data-ad-client="ca-pub-3086914080036003"
data-ad-slot="1408862175"
data-ad-format="auto"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
我在我的主题中发布了更多信息:Remove adsense on mobile
答案 3 :(得分:-1)
这里提到您要从html(I want to remove the div is a class is present.
)中删除adsense add。
使用 css
,无法删除html元素,只能使用display: none
/ visibility: hidden
隐藏它)。
所以这取决于你的愿望,如果你想删除那么你必须使用js / jQuery,否则只需隐藏使用CSS。
答案 4 :(得分:-1)
所以,如果我正确理解你的问题,你想要删除它,对吗?
如果是,那么.remove()
就是正确的。它完全删除了一个元素,因此你永远无法恢复它(当然,直到刷新)。
但是使用.hide()
会隐藏一个元素,就像display:none
那样。在这种情况下,元素仍然存在,但对用户不可见。我不确定谷歌是否可以支付这种“广告观看次数”,但这肯定违反了他们的规则。
因此,出于删除原因,您的代码示例最佳。但它可能不会逆转。
如果您仍希望稍后显示此内容,但又想阻止它出现在页面上,我看到的解决方案是将div
元素保存到变量,然后删除元素。稍后您可以从同一个变量中恢复它。像这样:
$(document).ready(function(){
if ($('.back').is(":visible") == true) {
var bannerAd = $( "#bannerad" ).html();
$( "#bannerad" ).remove();
}
function showAdContent(bannerAd) {
$( "#bannerAd" ).text( bannerAd );
}
});
猜猜它有效。
答案 5 :(得分:-2)
隐藏元素并不一定要删除元素更容易实现。要做到这一点,使用<div id="bannerad>
,你可以在你的jquery中提到它:
document.ready(function(){
if ($('.back').css("display", "none") !== true){
$("#bannerad").css("display", "none"); }});