Dedecms实现tags云标签随机颜色与字体大小方法详解

所属分类: CMS教程 / dedecms 阅读数: 1529
收藏 0 赞 0 分享

本文实例讲述了Dedecms实现tags云标签随机颜色与字体大小方法。分享给大家供大家参考。具体分析如下:

这里给大家介绍三种tags云标签随机颜色与字体大小方法,包括直接在dedecms中进行二次开发,另一种利用jquery与js来获取指定div中的A标签并设置连接颜色与字体大小.

修改方法:

1、在/include/common.func.php 中加入如下函数,代码如下:

复制代码
代码如下:
function getTagStyle()
{
$minFontSize=8; //最小字体大小,可根据需要自行更改
$maxFontSize=18; //最大字体大小,可根据需要自行更改
return 'font-size:'.($minFontSize+lcg_value()*(abs($maxFontSize-$minFontSize))).'px;color:#'.dechex(rand(0,255)).dechex(rand(0,196)).dechex(rand(0,255));
}

在模板中用如下代码调用标签,代码如下:

复制代码
代码如下:
{dede:tag row='45' getall='1' sort='hot'}
<a href='[field:link/]' title="[field:tag /]([field:total /])" style="[field:total runphp=yes]@me=getTagStyle();[/field:total]">[field:tag /]</a>
{/dede:tag}

如果你不想修改dedecms的话我们可以利用js来实例,代码如下:

复制代码
代码如下:
<script src="/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
var tags_a = $("#tags a");
tags_a.each(function(){
var x = 9;
var y = 0;
var rand = parseInt(Math.random() * (x - y + 1) + y);
$(this).addClass("tags"+rand);
});
})
</script>

css代码如下:

复制代码
代码如下:
<style>
body,a{ font-size:13px;}
a{ color:#333333; text-decoration:none;}
.taglist{ width:250px;overflow:hidden;border:#dddddd solid 1px;}
.taglist .tit{ width:100%; height:24px; line-height:24px; background-color:#565662;}
.taglist .tit a{ padding-left:8px; color:#ffffff;}
#tags a{height:26px; line-height:26px;padding-right:6px;}
#tags .tags0{}
#tags .tags1{color:#C00; font-size:24px;}
#tags .tags2{color:#030; font-size:16px;}
#tags .tags3{color:#00F;}
#tags .tags4{ font-size:16px;}
#tags .tags5{color:#C00; font-size:20px;}
#tags .tags6{color:#F06 font-size:20px;}
#tags .tags7{color:#030; font-weight:bold; font-size:18px;}
#tags .tags8{color:#F06; font-weight:bold;}
#tags .tags9{color:#C00; font-weight:bold;font-size:16px;}
#tags a:hover{ color:#F00; text-decoration:underline;}
.w95{ width:95%; margin:0 auto; padding-top:6px; padding-bottom:6px;}
.taglist .w95{}
</style>

html结构:

复制代码
代码如下:
<div class="taglist">
<div class="tit"><a href="#">TAG标签</a></div>
<div class="w95" id="tags">
这里面放你的A标题就可以了。
</div>

还有一个更简单的,代码如下:

复制代码
代码如下:
<script language="javascript" type="text/javascript">
function randomKeywords(){
var alinks = document.getElementById("keywords").getElementsByTagName("a");
var aColors = new Array("#990033", "#006666", "#9966CC","#FFCC66", "#6633CC", "#9999CC","#999966", "#996666", "#9933CC","#FF99CC");
var aSize = new Array("11px", "12px", "13px","14px", "15px", "16px","17px");
for( var i=0; i<alinks.length; i++){
alinks[i].style.color=aColors[Math.round(aColors.length*Math.random())];
alinks[i].style.fontSize=aSize[Math.round(aSize.length*Math.random())];
}
}
randomKeywords();
</script>

希望本文所述对大家的dedecms建站有所帮助。

更多精彩内容其他人还在看

dedecms utf-8 出现乱码问题的解决方法之一

在制作dedecms utf-8 模板是遇到一个关于乱码的问题
收藏 0 赞 0 分享

dedecms 评论盖楼实现楼层数,类似腾讯、网易的评论(5.5/5.6版)

DEDE评论盖楼实现楼层数,类似腾讯、网易的评论(5.5/5.6版),喜欢的朋友可以参考下。
收藏 0 赞 0 分享

dedecms 5.6 缩略图按大小比例缩小裁剪

由于DEDECMS v5.6缩略图生成方法是按比例进行放缩的,和之前的版本问题一样,dedecms的官方也许根本没有注意到,或者他们觉得这样才是最好的缩略图生成方式
收藏 0 赞 0 分享

linux和windows主机实现dedecms伪静态

有些朋友为了节约空间等原因,喜欢用伪静态的,对于流量小,确实不错,下面看下具体的方法。
收藏 0 赞 0 分享

dedecms 5.6修改Dedecms提示信息方法

DEDECMS的跳转提示信息“Dedecms提示信息”,那么如何把这一字样改为自己网站的名称呢?
收藏 0 赞 0 分享

dedecms广告生成JS文件和JS调用-DEDE广告优化

DEDE广告生成JS文件和JS调用|DEDE广告优化主程序ad_makejs.php不是我写的,我只是做了些操作优化和界面美化。
收藏 0 赞 0 分享

dedecms 5.6 分页样式代码修改方法

看到好多人在用dedeCMS,但同时dedeCMS也存在好多问题,在官方网站也很难找到解决方法
收藏 0 赞 0 分享

DedeCMS 统计栏目的文章总数的调用方法

DedeCMS 统计栏目的文章总数的调用方法,我是根据5.3里面修改的,本人测试了可以,希望对大家有所帮助。
收藏 0 赞 0 分享

DedeCMS 标题seo优化 给列表页加上第x页

dede5.3的列表页每页的标题都相同,这样会让Google的搜索引擎认为是重复的页面,影响收录,我们可以为列表加上第几页,这个没个页面就是独立不同的页了!
收藏 0 赞 0 分享

使用dedecms制作英文站的技巧说明

国内的英文站长们经常遇到要用国内中文版的cms或论坛、博客来搭建英文网站,可是很多程序由于是针对国内用户设计的,所以并没有官方的英文版,如ecshop和dede cms、discuz,zblog也是利用英文语言包来实现的,所以二次开发成了一个比较热门的话题。
收藏 0 赞 0 分享
查看更多