如何通过JS实现广告位随机显示不同图片及链接?

很多个人博客网站上都有一些固定的广告位,大多数都是投放一些图片广告,有些博主是通过投放 gif 格式的广告图片,有些直接投放 jpg 或 png 格式图片。这种做法都是只能一个广告位显示一个广告图片和一个链接地址,那么有没有可能实现一个广告位随机显示不同的图片及链接地址呢?
简单的随机图片广告代码:

var p=3;
var q=Math.floor(Math.random()*p+1)
switch(q)
{
	case 1:
	document.writeln("<a href=http://广告链接地址 target=_blank><img src=http://广告图片地址  border=0></a>");
	break;
	case 2:
	document.writeln("<a href=http://广告链接地址 target=_blank><img src=http://广告图片地址  border=0></a>");
	break;
	case 3:
	document.writeln("<a href=http://广告链接地址 target=_blank><img src=http://广告图片地址  border=0></a>");
	break;
}

先将上述代码里的“广告链接地址”和“广告图片地址”等修改为自己的链接后,将上述代码另存为ad.js文档后,上传至服务器主机指定目录,记下具体的目录地址。
在需要引用的地方,只需要加上下面这段引用代码即可:

<center>
<script type="text/javascript" src="http://www.vlwx.com/myad.js"></script>
</center>

其实只要是有点儿JS代码常识的都可以看出来,这个代码很简单,但是又很实用。明月提供的这个样例,是可以实现三张图片随机展示。如果想调整这个图片数量,只需要修改var p=3这里的数字,然后修改switch里面的对应的case数量即可。
还可以给广告指定投放有效时段,代码如下

function strToDate(str,ext){
    if(str==null || str=='') return;
    var arys = new Array();
    arys = str.split('-');
    var newDate = new Date(arys[0],arys[1]-1,arys[2],9,0,0);
    if(ext){
        newDate = new Date(newDate.getTime()+1000*60*60*24);
    }
    return newDate;
}
function showit(str,start,end){
	var date = new Date();
	var start=strToDate(start);
	var end=strToDate(end,false);
	if(date>start && date<end || start==null){
		document.write(str);
    }
}
var p=3;
var q=Math.floor(Math.random()*p+1)
switch(q)
{
	case 1:
	showit("<a href='https://广告链接地址=_blank'><img src='http://广告图片地址'  border=0></a>","2017-3-24","2017-3-25");
	break;
	case 2:
	showit("<a href='https://广告链接地址=_blank'><img src='http://广告图片地址'  border=0></a>","2017-3-24","2017-3-25");
	break;
	case 3:
	showit("<a href='https://广告链接地址=_blank'><img src='http://广告图片地址'  border=0></a>","2017-3-24","2017-3-25");
	break;
}

上述代码没有测试过,大家只能自己调试了。
如果实在不会代码的,也可以通过下面这个自助链接去生成http://api.vlwx.com/tool/gglb/

给TA打赏
共{{data.count}}人
人已打赏
源码分享

苹果cmsv10自适应首涂二十二套模板

2020-3-22 0:38:23

源码分享

苹果maccms v10视频详细介绍描述伪原创代码

2020-4-2 0:45:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
有新私信 私信列表
搜索