教你用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 相关文章推荐
关于JavaScript的with 语句的使用方法
May 09 Javascript
jQuery实现等比例缩放大图片让大图片自适应页面布局
Oct 16 Javascript
JS模仿手机端九宫格登录功能实现代码
Apr 28 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
May 17 Javascript
jQuery图片轮播插件——前端开发必看
May 31 Javascript
Angular表单验证实例详解
Oct 20 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
Jun 13 Javascript
Js自定义多选框效果的实例代码
Jul 05 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
Nov 01 Javascript
js实现随机点名程序
Sep 17 Javascript
js实现幻灯片轮播图
Aug 14 Javascript
基于Vant UI框架实现时间段选择器
Dec 24 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获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
2013/11/03 Javascript
iframe子页面与父页面在同域或不同域下的js通信
2014/05/07 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
2014/10/14 Javascript
Node.js中调用mysql存储过程示例
2014/12/20 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
JavaScript原生对象之Date对象的属性和方法详解
2015/03/13 Javascript
jquery读取xml文件实现省市县三级联动的方法
2015/05/29 Javascript
javascript封装简单实现方法
2015/08/11 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
用JavaScript来美化HTML的select标签的下拉列表效果
2015/11/17 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
2017/01/18 Javascript
详解从新建vue项目到引入组件Element的方法
2017/08/29 Javascript
浅谈使用React.setState需要注意的三点
2017/12/18 Javascript
Vuex入门到上手教程
2018/06/20 Javascript
vue中使用better-scroll实现滑动效果及注意事项
2018/11/15 Javascript
vue实现在线学生录入系统
2020/05/30 Javascript
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
python开发中module模块用法实例分析
2015/11/12 Python
浅谈python日志的配置文件路径问题
2018/04/28 Python
对Python3+gdal 读取tiff格式数据的实例讲解
2018/12/04 Python
深入了解python中元类的相关知识
2019/08/29 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
Python values()与itervalues()的用法详解
2019/11/27 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
2020/01/22 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
销售行政专员岗位职责
2014/06/10 职场文书
公司委托书格式范本
2014/09/16 职场文书
教师学习群众路线心得体会
2014/11/04 职场文书
大学生自我推荐信范文
2015/03/24 职场文书
焦点访谈观后感
2015/06/11 职场文书
mysql优化之query_cache_limit参数说明
2021/07/01 MySQL