原文来自:https://www.zixuephp.com
Dedecms实现tags云标签随机颜色与字体大小方法总结
本文章给大家介绍三种tags云标签随机颜色与字体大小方法,包括直接在dedecms中进行二次开发,另一种利用jquery与js来获取指定div中的A标签并设置连接颜色与字体大小了.
修改方法:
1、在/include/common.func.php 中加入如下函数,代码如下:
- functiongetTagStyle()
- {
- $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:tagrow='45'getall='1'sort='hot'}
- <ahref='[field:link/]'title="[field:tag/]([field:total/])"style="[field:totalrunphp=yes]@me=getTagStyle();[/field:total]">[field:tag/]</a>
- {/dede:tag}
如果你不想修改dedecms的话我们可以利用js来实例,代码如下:
- <scriptsrc="/ajax/libs/jquery/1.4.2/jquery.min.js"type="text/javascript"></script>
- <scripttype="text/javascript">
- $(document).ready(function(){
- vartags_a=$("#tagsa");
- tags_a.each(function(){
- varx=9;
- vary=0;
- varrand=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:#ddddddsolid1px;}
- .taglist.tit{width:100%;height:24px;line-height:24px;background-color:#565662;}
- .taglist.tita{padding-left:8px;color:#ffffff;}
- #tagsa{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:#F06font-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;}
- #tagsa:hover{color:#F00;text-decoration:underline;}
- .w95{width:95%;margin:0auto;padding-top:6px;padding-bottom:6px;}
- .taglist.w95{}
- </style>
html结构:
- <divclass="taglist">
- <divclass="tit"><ahref="#">TAG标签</a></div>
- <divclass="w95"id="tags">
- 这里面放你的A标题就可以了。
- </div>
还有一个更简单的,代码如下:
- <scriptlanguage="javascript"type="text/javascript">
- functionrandomKeywords(){
- varalinks=document.getElementById("keywords").getElementsByTagName("a");
- varaColors=newArray("#990033","#006666","#9966CC","#FFCC66","#6633CC","#9999CC","#999966","#996666","#9933CC","#FF99CC");
- varaSize=newArray("11px","12px","13px","14px","15px","16px","17px");
- for(vari=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>