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

所属分类: CMS教程 / dedecms 阅读数: 1502
收藏 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 5.5 出现乱码的解决办法

今天做了一个站测试用,由于是新站没有太多时候去添加内容,就想到用火车头来采集。采集的工作比较顺利。
收藏 0 赞 0 分享

dedecms 列表页标题修改图文方法(利于优化)

dedecms实现
收藏 0 赞 0 分享

DEDECMS 5.1的SEO技巧之栏目列表页优化

本人刚接触DEDECMS系统还不到半,觉得DEDE系统不错,很好优化,我现在介绍一下我在使用过程中的SEO技巧,希望给初学者一些帮助
收藏 0 赞 0 分享

DeDeCms V5.6 数据批量索引到淘特搜索引擎

由于DedeCms没有将文章的生成地址保存在数据库中,因此需要做的就是索引一个字段:LinkUrl来保存文章生成地址。
收藏 0 赞 0 分享

dedecms 问答系统取消积分与用户登陆验证的方法

现在我要用dedecms来做一个问答功能,功能是不需要用户登陆并可以提问,因为问题时需要积分所以我把登际与积分都取消了。
收藏 0 赞 0 分享

dedecms 5.3/5.5全站伪静态含SEO重复记录优化

DEDECMS系统栏目、文章页面、分页面伪静态和域名301重定向详细方法
收藏 0 赞 0 分享

dedecms 每个栏目下的文章总数的调用

实现统计每个栏目下的文章总数的调用修改方法,经网友测试基本上没有问题。
收藏 0 赞 0 分享

dedecms制作英文站需要修改的地方

我一直都不喜欢用DEDE做英文站,不是不好,而是需要改动的地方太多了,并不像一些网上说的改改字体,改改编码那么轻松的事情。
收藏 0 赞 0 分享

dedecms英文模板 英文网站程序的选择

dedecms英文模板目前很多,但一眼看上去都是一些老版本了,而且卖模板的人说是SEO过,其实网站程序的优化都没有做好,还不如自己动手改改 dedecms官方默认的模板。
收藏 0 赞 0 分享

DEDECMS 支付宝操作手册

织梦CMS携手支付宝推出DedeCMS V5.6全新支付接口,DedeCMS系统为国内做早开源的PHP内容管理系统,系统除了拥有强大,灵活的内容管理功能之外,还增加了分类、书库、黄页、圈子、问答等模块,同时该版本中整合了最新支付宝在线支付接口。
收藏 0 赞 0 分享
查看更多