教你用javascript实现随机标签云效果_附代码


Posted in Javascript onMarch 16, 2016

标签云是一套相关的标签以及与此相应的权重。典型的标签云有30至150个标签。权重影响使用的字体大小或其他视觉效果。同时,直方图或饼图表是最常用的代表约12种不同的权数。因此,标签云彩能代表更多的权,尽管不那么准确。此外,标签云通常是可以交互的:标签是典型的超链接,让用户可以仔细了解他们的内容。
 
大概可以理解为一堆相关或者不相关的标签混到一块,根据不同的重要程度,或者其他维度的不同来为每个标签设置不同的样式已凸显他们的不同,这样的一堆标签在一起就是我们通常说的标签云了。
 
下面我们大概说一下标签云实现的原理:
明白了标签云是咋回事儿那么实现起来就简单了,其实就是根据每个标签的不同的重要性设置不同的样式就可以了。
这里我们使用随机数实现一个简单的标签云,不是根据某些维度来实现,纯粹的随机样式。这边标签云实际是一堆a标签,然后随机设置颜色和字体大小,当然字体大小有个最大最小限制的。
1、我们设置了一个取随机数函数,和一个随机颜色函数,通过这两个函数为标签设置样式。
2、我们把所有的a标签循环,然后利用步骤一里边的随机数,和随机颜色设置这些标签的字体大小和颜色。
 
查看效果如下:

教你用javascript实现随机标签云效果_附代码

一个简单的标签云就完事了。

其实我们还可以吧样式设置到样式文件,然后通过为a标签设置class来设置a标签的样式,这样灵活性更大。

如果需要根据某些维度来设置的话,那么可以给a标签设置好这种维度的属性,然后根据这些属性来设置样式。

下面看代码:

html代码:

<div id="wrap">
 <a href="#">web标准学习</a>
 <a href="#">css</a>
 <a href="#">javascript</a>
 <a href="#">html5</a>
 <a href="#">canvas</a>
 <a href="#">video</a>
 <a href="#">audio</a>
 <a href="#">jQuery</a>
 <a href="#">jQuerymobile</a>
 <a href="#">flash</a>
 <a href="#">firefox</a>
 <a href="#">chrome</a>
 <a href="#">opera</a>
 <a href="#">IE9</a>
 <a href="#">css3.0</a>
 <a href="#">andriod</a>
 <a href="#">apple</a>
 <a href="#">google</a>
 <a href="#">jobs</a>
 </div>

javascript代码:

window.onload=function(){
 var obox=document.getElementById("wrap");
 var obj=obox.getElementsByTagName("a");
 //随机方法
 function rand(num){
  return parseInt(Math.random()*num+1);
 }
 //随机颜色值
 function randomcolor(){
  var str=Math.ceil(Math.random()*16777215).toString(16);
  if(str.length<6){
   str="0"+str;
  }
  return str;
 }
 //循环
 for( len=obj.length,i=len;i--;){
  obj[i].className="color"+rand(5);
  obj[i].style.zIndex=rand(5);
  obj[i].style.fontSize=rand(12)+12+"px";
  // obj[i].style.background="#"+randomcolor();
  obj[i].style.color="#"+randomcolor();
  obj[i].onmouseover=function(){
   this.style.background="#"+randomcolor();
  }
  obj[i].onmouseout=function(){
   this.style.background="none";
  }
 }
}

以上这篇教你用javascript实现随机标签云效果_附代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 图片上传按比例预览插件集合
May 28 Javascript
jQuery检测某个元素是否存在代码分享
Jul 09 Javascript
JavaScript中的函数(二)
Dec 23 Javascript
深入浅析JavaScript的API设计原则
Jun 14 Javascript
js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析
Dec 27 Javascript
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
Jan 25 Javascript
Google 爬虫如何抓取 JavaScript 的内容
Apr 07 Javascript
Angular5中调用第三方js插件的方法
Feb 26 Javascript
JavaScript多态与封装实例分析
Jul 27 Javascript
微信小程序 swiper 组件遇到的问题及解决方法
May 26 Javascript
详解mpvue开发微信小程序基础知识
Sep 23 Javascript
详解ECMAScript2019/ES10新属性
Dec 06 Javascript
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
Mar 16 #Javascript
js纯数字逐一停止显示效果的实现代码
Mar 16 #Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
Mar 16 #Javascript
js获取时间精确到秒(年月日)
Mar 16 #Javascript
js实现内容显示并使用json传输数据
Mar 16 #Javascript
javascript中arguments,callee,caller详解
Mar 16 #Javascript
Bootstrap每天必学之滚动监听
Mar 16 #Javascript
You might like
PHP在线生成二维码(google api)的实现代码详解
2013/06/04 PHP
利用php递归实现无限分类 格式化数组的详解
2013/06/08 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
2013/07/05 PHP
PHP中Session引起的脚本阻塞问题解决办法
2014/04/08 PHP
memcache一致性hash的php实现方法
2015/03/05 PHP
JS的千分位算法实现思路
2013/07/31 Javascript
js控制容器隐藏出现防止样式变化的两种方法
2014/04/25 Javascript
NodeJS中利用Promise来封装异步函数
2015/02/25 NodeJs
常用的JavaScript WEB操作方法分享
2015/02/28 Javascript
全面了解js中的script标签
2016/07/04 Javascript
jQuery属性选择器用法示例
2016/09/09 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
JS返回顶部实例代码
2020/08/09 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
非常实用的jQuery代码段集锦【检测浏览器、滚动、复制、淡入淡出等】
2019/08/08 jQuery
js实现QQ邮箱邮件拖拽删除功能
2020/08/27 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
Python实现提取谷歌音乐搜索结果的方法
2015/07/10 Python
Python复数属性和方法运算操作示例
2017/07/21 Python
一文总结学习Python的14张思维导图
2017/10/17 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
Python pandas.DataFrame 找出有空值的行
2019/09/09 Python
Python 单例设计模式用法实例分析
2019/09/23 Python
python统计字符串中字母出现次数代码实例
2020/03/02 Python
CSS3之多背景background使用示例
2013/10/18 HTML / CSS
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
世界领先的26岁以下学生和青少年旅行预订网站:StudentUniverse
2018/07/01 全球购物
Carrs Silver官网:英国著名的银器品牌
2020/08/29 全球购物
你常见到的runtime exception
2016/09/05 面试题
大学生先进事迹材料
2014/02/16 职场文书
大学生演讲稿
2014/04/25 职场文书
美丽家庭事迹材料
2014/05/03 职场文书
2015年小学美术工作总结
2015/05/25 职场文书
python实现进度条的多种实现
2021/04/29 Python
Golang 编译成DLL文件的操作
2021/05/06 Golang