使用js / jquery的动态脚本元素放置

时间:2014-06-13 02:29:07

标签: javascript jquery css

这个问题可能有一个简单的答案,但它逃避了我。在我网站上的广告(Adsense或其他广告)中,他们提供了一个脚本代码(例如<script type='text/javascript' src='to/my/source'></script>),以放置在我希望广告展示的位置。

但是,在加载广告脚本之前,我想通过测试js中display的CSS div来测试用户是否在手持设备上。像这样:

if ($('#mydiv').css('display') == 'none') {
    //do not load the ad; do nothing
} else {
    //load the ad script element at *this place*;
    //that is, where this conditional is placed
}

我的想法是将此条件放在与我正常放置广告脚本相同的位置。但是,它不起作用(就像我知道它不会),我无法弄清楚如何加载脚本标签。谢谢你的帮助。

编辑:
这是我的实际代码:

<script type='text/javascript'>
if ($('#sidebar-wrapper').css('display') == 'none') {

} else {
    document.write("<scr" + "ipt type='text/javascript' src='http://ads.blogherads.com/bh/32/320/310566/1343256/300a.js'>" + "</scr" + "ipt>");
}
</script>

1 个答案:

答案 0 :(得分:1)

我知道有条件地将脚本直接插入HTML中的某个位置的唯一方法是使用document.write()

<script>
if ($('#mydiv').css('display') == 'none') {
    //do not load the ad; do nothing
} else {
    document.write("<scr" + "ipt src='http://example.com/ad.js'></scr" + "ipt>");
}
</script>

注意:您必须确保已加载jQuery并且在页面的HTML中此位置之前显示#mydiv,以使条件正常工作。