【发布时间】:2012-11-07 16:09:17
【问题描述】:
谁能告诉我如何实现以下目标?
我想在我的网站页面上显示横幅(当然这很简单)。但是我希望它随机(一次)出现在我选择的 4 个位置之一(DIV ID 的bannerpos1、bannerpos2、bannerpos3 和bannerpos4)。
如果横幅出现在 bannerpos2 中,则不应出现在任何其他位置,反之亦然。
而且,只有在可能的情况下,它才应该显示一个随机横幅(从 3 个左右的横幅中选择)。
简而言之;我想在我的页面上随机放置一个随机横幅。当然,横幅和位置尚未确定。
有人可以帮助我,或指出正确的方向吗?
//11 月 7 日更新
好的,我一直在玩 Joe 所展示的脚本,但是我遇到了一些问题......
目前代码如下所示(在 body-tage 之前):
<script type="text/javascript">
$(function(){
var position = Math.floor((Math.random()*3));
console.log(position)
var $a = $("#advertentieplaats1");
var $b = $("#advertentieplaats2");
var $c = $("#advertentieplaats3");
var $advertentietype1 = $("#advinhoud1");
var $advertentietype2 = $("#advinhoud2");
var $advertentietype3 = $("#advinhoud3");
if (position == 0){
$a.append($advertentietype1);
}
if (position == 1){
$b.append($advertentietype2);
}
if (position == 2){
$c.append($advertentietype3);
}
});
</script>
在页面底部我有以下内容:
<div id="advinhoud1">adsense code 1</div>
<div id="advinhoud2">adsense code 2</div>
<div id="advinhoud3">adsense code 3</div>
或者这有一些问题,或者我做错了……
在 Firefox 中,它会在随机(已定义)位置显示 adsense 代码。它还在底部显示了剩余的 2 个广告(它们应该不可见,甚至不应该加载)。
在 Internet Explorer 中它什么都不做...?所有的 Adsense 都显示在底部,随机位置什么都没有...?
【问题讨论】:
-
这不是很困难。设计三个横幅。为 4 个不同的位置定义 CSS 类,然后使用 Math.random() 选择横幅和位置并应用它们。
-
我总是把“这不难”理解为“我不认为这很难,所以你也不应该”。
-
@Joe 它的意思是“它确实是可能的”,因为 OP 不确定。但我明白你的意思。
-
抱歉,我可能误读了您的评论。我喜欢 SO 作为严肃程序员的重要资源,但我确实认为新手有时会受到不良对待并推迟!我知道我过去曾为此感到内疚,所以我尽量小心。也许我对它过于敏感。
标签: javascript jquery html