一个自制的基于jquery的插件,代码如下:
// jquery.tag_cloud.js
jQuery.fn.tagCloud = function(params){
var max = function(arr){
var _tmp = null;
for(var i in arr) {
if(_tmp) {
_tmp = _tmp > arr[i] ? _tmp : arr[i];
}
else {
_tmp = arr[i];
}
}
return _tmp;
}
var min = function(arr){
var _tmp = null;
for(var i in arr) {
if(_tmp) {
_tmp = _tmp < arr[i] ? _tmp : arr[i];
}
else {
_tmp = arr[i];
}
}
return _tmp;
}
var _class = params.tag_class;
var _count_attr = params.count_attr;
var _max_size = params.max_size;
var _min_size = params.min_size;
var tag_arr = $(this).find('.' + _class);
var count_arr = [];
tag_arr.each(function(){
count_arr.push($(this).data(_count_attr));
})
var _max = max(count_arr);
var _min = min(count_arr);
tag_arr.each(function(){
$(this).css({
fontSize: parseInt( (_max_size - _min_size ) * ($(this).data(_count_attr) - _min ) / ( _max - _min ) + _min_size)
})
})
}
// html:
<html>
<head>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="jquery.tag_cloud.js"></script>
<style type="text/css">
#tag_cloud {
width: 150px;
border: 1px solid #CCC;
padding: 5px;
}
#tag_cloud a {
text-decoration: none;
display: block;
float: left;
margin: 4px;
}
</style>
<meta charset="utf-8"/>
</head>
<body>
<div id="tag_cloud">
<a href="http://ctquan.com/search_startups/11/移动" class="tag" data-count="10">移动</a>
<a href="http://ctquan.com/search_startups/11/新能源" class="tag" data-count="20">新能源</a>
<a href="http://ctquan.com/search_startups/11/传媒娱乐" class="tag" data-count="15">传媒娱乐</a>
<a href="http://ctquan.com/search_startups/11/电子商务" class="tag" data-count="10">电子商务</a>
<a href="http://ctquan.com/search_startups/11/电脑硬件" class="tag" data-count="8">电脑硬件</a>
<div style="clear: both;"></div>
</div>
<script type="text/javascript">
// 利用一个hash来自由配置想要实现的字号范围以及标签云使用的HTML相关属性
$('#tag_cloud').tagCloud({
tag_class : 'tag',
count_attr : 'count',
max_size : 30,
min_size : 8
});
</script>
</body>
</html>
分享到:
相关推荐
在Web开发中,"省市区三级联动插件+Jquery"是一个常见的功能需求,尤其在构建涉及用户地理位置信息的系统时。这个插件允许用户在输入地址时通过下拉选择的方式,依次选择省份、城市和区县,形成一个完整的三级地址。...
描述中提到的“效果看这个 http://www.anchen8.net/test/ssq/index.html”,是提供了一个实际运行的示例链接,用户可以通过访问该链接查看插件的实际操作和表现。这个链接显示的页面应该会包含一个具备省市区联动...
该压缩包文件“jquery省自治区城市地图代码.zip”包含了一个基于jQuery和ECharts库实现的中国省自治区城市地图交互功能的源代码。这个项目旨在帮助开发者在网页上展示一个动态的、可交互的地图,用户可以通过点击...
7. **插件化**:如果这是一个jQuery插件,那么它应该具有易于使用、可配置和可扩展的特点。开发者可以通过简单的调用方式在自己的项目中集成此功能,并可能根据需要调整参数或添加自定义行为。 在具体应用中,...
jQuery是JavaScript的一个库,它极大地简化了JavaScript的使用,提供了丰富的API来处理DOM操作、事件处理、动画效果以及Ajax交互。在给定的“jquery省自治区城市地图代码”项目中,我们可以深入探讨以下几个关键知识...
Spring Cloud是基于Spring Boot的一系列框架的集合,它为开发人员提供了快速构建分布式系统的一些常用模式的工具,例如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、...
6. **数据一致性**:在分布式环境中保证数据一致性是一个挑战,通常需要采取最终一致性的策略。 7. **重复开发**:虽然微服务架构提倡每个服务作为独立的产品开发,但这可能会导致一些基础组件和功能被重复实现。 #...
这个插件基于jQuery 1.10.2.min.js,这是一个广泛使用的JavaScript库,为开发者提供了丰富的DOM操作、事件处理和动画功能。 jQuery库简化了JavaScript的许多复杂操作,使得动态创建和操作HTML元素变得简单。在这个...
SpringCloud是一个以Spring Boot为基础的微服务架构解决方案,提供了一系列工具来帮助开发人员快速构建分布式系统中的一些常见模式。 微服务架构的核心概念包括服务自治、服务间通信、服务治理、服务安全等。服务...
Spring Cloud Alibaba 是一套基于阿里巴巴集团内部中间件实践经验,为Java开发者提供的微服务解决方案。它旨在简化云原生应用的开发过程,尤其是在Spring Cloud生态中,填补了Netflix OSS组件停止更新后留下的空白。...
Distpicker 一个简单的jQuery插件,用于选择中国的省,市和区。请注意以下市/县以下设置下一级的区:济源市,潜江市,神农架林区,天门市,仙桃市,东莞市,中山市,东沙群岛,白沙黎族自治县,保亭黎族苗族自治县,...
总结,本文通过深入研究Vue.js和SpringCloud的技术特点,设计了一个基于微服务架构的博客系统,实现了前后端分离,提升了系统的灵活性、可扩展性和性能。这一实践不仅展示了现代Web开发的最佳实践,也为类似项目提供...
自治:一个微服务就是一个独立的实体,它可以独立部署、升级,服务与服务之间通过REST等形式的标准接口进行通信,并且一个微服务实例可以被替换成另一种实现,而对其它的微服务不产生影响。逻辑清晰:微服务单一职责...
2. Ribbon:客户端负载均衡器,它与Eureka结合,可以在消费服务时自动从服务列表中选择一个合适的实例进行请求。 3. Hystrix:断路器,防止服务雪崩效应,当服务调用失败或超时时,Hystrix会打开断路器,避免后续...
Spring Boot 是一个快速开发框架,它简化了创建独立的、生产级别的基于Spring的应用程序过程,减少了配置和初始化步骤。由于 Spring Boot 与微服务架构的构建并无直接关联,因此在此不做深入探讨。 在服务架构方面...