教你用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替换已存在于element上的event的方法
Mar 09 Javascript
JS继承--原型链继承和类式继承
Apr 08 Javascript
js+div实现图片滚动效果代码
Feb 10 Javascript
解决自定义$(id)的方法与jquery选择器$冲突的问题
Jun 14 Javascript
JQuery中attr方法和removeAttr方法用法实例
May 18 Javascript
浅析Vue中method与computed的区别
Mar 06 Javascript
学习jQuery中的noConflict()用法
Sep 28 jQuery
angular5 子组件监听父组件传入值的变化方法
Sep 30 Javascript
基于Vue实现图片在指定区域内移动的思路详解
Nov 11 Javascript
对Layer UI 模块化的用法详解
Sep 26 Javascript
vue addRoutes路由动态加载操作
Aug 04 Javascript
前端vue如何使用高德地图
Nov 05 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
大师制作的中短波矿石收音机
2020/04/02 无线电
PHP+MYSQL的文章管理系统(二)
2006/10/09 PHP
PHP 截取字符串 分别适合GB2312和UTF8编码情况
2009/02/12 PHP
用PHP将网址字符串转换成超链接(网址或email)
2010/05/25 PHP
基于Snoopy的PHP近似完美获取网站编码的代码
2011/10/23 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
CodeIgniter针对数据库的连接、配置及使用方法
2016/03/03 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
JavaScript中的isXX系列是否继续使用的分析
2011/04/16 Javascript
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
jQuery实现可用于博客的动态滑动菜单
2015/03/09 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
jQuery的框架介绍
2016/05/11 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
vue-resource 拦截器(interceptor)的使用详解
2017/07/04 Javascript
node通过npm写一个cli命令行工具
2017/10/12 Javascript
Vue中的Vux配置指南
2017/12/08 Javascript
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
2018/05/17 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
jQuery中getJSON跨域原理的深入讲解
2020/09/02 jQuery
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
Python_LDA实现方法详解
2017/10/25 Python
python requests模拟登陆github的实现方法
2019/12/26 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
python飞机大战游戏实例讲解
2020/12/04 Python
阿里巴巴国际站:Alibaba.com
2016/07/21 全球购物
德国最大的网上鞋店之一:Schuhe24.de
2017/06/10 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
公司合作协议书范本
2014/04/18 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
2015年安全生产目标责任书
2015/01/29 职场文书
辞职离别感言
2015/08/04 职场文书
python - timeit 时间模块
2021/04/06 Python