基于Html5折叠卡片式下拉菜单插件教程
2016-01-06 10:09
633 查看
一、Html结构
<div class="container">
<div class="card-drop">
<a class='toggle' href="#">
<i class='fa fa-suitcase'></i>
<span class='label-active'>移动广告平台</span>
</a>
<ul>
<li class='active'>
<a data-label="Everyting" href="#"><i class='fa fa-suitcase'></i>移动广告平台</a>
</li>
<li>
<a data-label="Design" href="#"><i class='fa fa-magic'></i> KeyMob移动广告平台</a>
</li>
<li>
<a data-label="UI-UX" href="#"><i class='fa fa-bolt'></i>多盟移动广告平台</a>
</li>
<li>
<a data-label="Print" href="#"><i class='fa fa-tint'></i>芒果移动广告</a>
</li>
<li>
<a data-label="Photography" href="#"><i class='fa fa-camera-retro'></i>有米广告平台</a>
</li>
<li>
<a data-label="Photography" href="#"><i class='fa fa-camera-retro'></i>安沃传媒</a>
</li>
</ul>
</div>
</div>
二、JS结构
(function ($) {
var cards = $('.card-drop'), toggler = cards.find('.toggle'), links = cards.find('ul>li>a'), li = links.parent('li'), count = links.length, width = 100;
li.each(function (i) {
$(this).css('z-index', count - i);
});
function setClosed() {
li.each(function (index) {
$(this).css('top', index * 4).css('width', width - index * 0.5 + '%').css('margin-left', index * 0.25 + '%');
});
li.addClass('closed');
toggler.removeClass('active');
}
setClosed();
toggler.on('mousedown', function () {
var $this = $(this);
if ($this.is('.active')) {
setClosed();
} else {
$this.addClass('active');
li.removeClass('closed');
li.each(function (index) {
$(this).css('top', 60 * (index + 1)).css('width', '100%').css('margin-left', '0px');
});
}
});
links.on('click', function (e) {
var $this=$(this),label =$this.data('label');
icon=$this.children('i').attr('class');
li.removeClass('active');
if ($this.parent('li').is('active')) {
$this.parent('li').removeClass('active');
} else {
$this.parent('li').addClass('active');
}
toggler.children('span').text(label);
toggler.children('i').removeClass().addClass(icon);
setClosed();
e.preventDefault;
});
}(jQuery));
KeyMob是目前国内领先的移动端广告平台,聚合了国内外主流的移动广告平台,是国内知名的移动移动广告平台,成为应用开发者手机广告优化之首选。
<div class="container">
<div class="card-drop">
<a class='toggle' href="#">
<i class='fa fa-suitcase'></i>
<span class='label-active'>移动广告平台</span>
</a>
<ul>
<li class='active'>
<a data-label="Everyting" href="#"><i class='fa fa-suitcase'></i>移动广告平台</a>
</li>
<li>
<a data-label="Design" href="#"><i class='fa fa-magic'></i> KeyMob移动广告平台</a>
</li>
<li>
<a data-label="UI-UX" href="#"><i class='fa fa-bolt'></i>多盟移动广告平台</a>
</li>
<li>
<a data-label="Print" href="#"><i class='fa fa-tint'></i>芒果移动广告</a>
</li>
<li>
<a data-label="Photography" href="#"><i class='fa fa-camera-retro'></i>有米广告平台</a>
</li>
<li>
<a data-label="Photography" href="#"><i class='fa fa-camera-retro'></i>安沃传媒</a>
</li>
</ul>
</div>
</div>
二、JS结构
(function ($) {
var cards = $('.card-drop'), toggler = cards.find('.toggle'), links = cards.find('ul>li>a'), li = links.parent('li'), count = links.length, width = 100;
li.each(function (i) {
$(this).css('z-index', count - i);
});
function setClosed() {
li.each(function (index) {
$(this).css('top', index * 4).css('width', width - index * 0.5 + '%').css('margin-left', index * 0.25 + '%');
});
li.addClass('closed');
toggler.removeClass('active');
}
setClosed();
toggler.on('mousedown', function () {
var $this = $(this);
if ($this.is('.active')) {
setClosed();
} else {
$this.addClass('active');
li.removeClass('closed');
li.each(function (index) {
$(this).css('top', 60 * (index + 1)).css('width', '100%').css('margin-left', '0px');
});
}
});
links.on('click', function (e) {
var $this=$(this),label =$this.data('label');
icon=$this.children('i').attr('class');
li.removeClass('active');
if ($this.parent('li').is('active')) {
$this.parent('li').removeClass('active');
} else {
$this.parent('li').addClass('active');
}
toggler.children('span').text(label);
toggler.children('i').removeClass().addClass(icon);
setClosed();
e.preventDefault;
});
}(jQuery));
KeyMob是目前国内领先的移动端广告平台,聚合了国内外主流的移动广告平台,是国内知名的移动移动广告平台,成为应用开发者手机广告优化之首选。
相关文章推荐
- 160106_html5
- 8个超酷炫仿苹果应用的HTML5动画
- 8个超炫酷仿苹果应用的HTML5动画
- HTML5 拖放(Drag 和 Drop)
- HTML5 Geolocation(地理定位)
- HTML5 Video(视频)
- HTML5 Audio(音频)
- HTML5结构化标签
- html5 本地存储 localStorage
- H5与Native交互的实现
- HTML5 localStorage本地存储实际应用举例
- 【仿】程序员的表白-源码HTML5+JQ
- h5
- HTM4和HTML5的区别
- 7 款华丽的 HTML5 Loading 动画特效
- 浅析HTML5 Web Workers使用场景与作用
- 关于 HTML5 的文件上传处理,兼容,以及 BLOB 对象的使用
- H5实现拍照并上传
- 传奇创世孙大宁:2016年H5将井喷,新传播途径是突破口
- html5+d3 svg 线条、图形颜色渐变动画