当前位置:首页 > CMS教程 > DeDecms > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2014-03-12 10:59:07 浏览: 评论:0 

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

修改方法:

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

  1. function getTagStyle()  
  2. {  
  3. $minFontSize=8; //最小字体大小,可根据需要自行更改  
  4. $maxFontSize=18; //最大字体大小,可根据需要自行更改  
  5. return 'font-size:'.($minFontSize+lcg_value()*(abs($maxFontSize-$minFontSize))).'px;color:#'.dechex(rand(0,255)).dechex(rand(0,196)).dechex(rand(0,255)); 

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

  1. {dede:tag row='45' getall='1' sort='hot'}  
  2. <a href='[field:link/]' title="[field:tag /]([field:total /])" style="[field:total runphp=yes]@me=getTagStyle();[/field:total]">[field:tag /]</a>  
  3. {/dede:tag} 

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

  1. <script src="/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
  2.    <script type="text/javascript"
  3.       $(document).ready(function() { 
  4.          var tags_a = $("#tags a"); 
  5.          tags_a.each(function(){ 
  6.              var x = 9; 
  7.              var y = 0; 
  8.              var rand = parseInt(Math.random() * (x - y + 1) + y); 
  9.              $(this).addClass("tags"+rand); 
  10.           }); 
  11.       })    
  12. </script> 

css代码如下:

  1. <style> 
  2. body,a{ font-size:13px;} 
  3. a{ color:#333333text-decoration:none;} 
  4. .taglist{ width:250px;overflow:hidden;border:#dddddd solid 1px;} 
  5. .taglist .tit{ width:100%height:24pxline-height:24pxbackground-color:#565662;} 
  6. .taglist .tit a{ padding-left:8pxcolor:#ffffff;} 
  7. #tags a{height:26pxline-height:26px;padding-right:6px;} 
  8. #tags .tags0{} 
  9. #tags .tags1{color:#C00font-size:24px;} 
  10. #tags .tags2{color:#030font-size:16px;} 
  11. #tags .tags3{color:#00F;} 
  12. #tags .tags4font-size:16px;} 
  13. #tags .tags5{color:#C00font-size:20px;} 
  14. #tags .tags6{color:#F06 font-size:20px;} 
  15. #tags .tags7{color:#030font-weight:boldfont-size:18px;} 
  16. #tags .tags8{color:#F06font-weight:bold;} 
  17. #tags .tags9{color:#C00font-weight:bold;font-size:16px;} 
  18. #tags a:hover{ color:#F00text-decoration:underline;} 
  19. .w95width:95%margin:0 autopadding-top:6pxpadding-bottom:6px;} 
  20. .taglist .w95{} 
  21. </style> 

html结构:

  1. <div class="taglist"> 
  2. <div class="tit"><a href="#">TAG标签</a></div> 
  3. <div class="w95" id="tags"> 
  4. 这里面放你的A标题就可以了。 
  5. </div> 

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

  1. <script language="javascript" type="text/javascript"
  2. function randomKeywords(){ 
  3. var alinks = document.getElementById("keywords").getElementsByTagName("a"); 
  4. var aColors = new Array("#990033""#006666""#9966CC","#FFCC66""#6633CC""#9999CC","#999966""#996666""#9933CC","#FF99CC"); 
  5. var aSize = new Array("11px""12px""13px","14px""15px""16px","17px"); 
  6. forvar i=0; i<alinks.length; i++){ 
  7. alinks[i].style.color=aColors[Math.round(aColors.length*Math.random())]; 
  8. alinks[i].style.fontSize=aSize[Math.round(aSize.length*Math.random())]; 
  9. randomKeywords(); 
  10. </script> 

Tags: Dedecms tags云标签 字体大小

分享到: