设为首页 收藏本站
查看: 480|回复: 0

JQuery图片切换 Win8 Metro风格Banner

[复制链接]

尚未签到

发表于 2015-5-21 09:24:26 | 显示全部楼层 |阅读模式
图片切换 - 合肥网站建设www.an56.net


.bg_area { padding-top:30px; padding-bottom:30px }
.hs_container { position:relative; width:902px; height:471px; overflow:hidden; clear:both; border:2px solid #fff; cursor:pointer; -moz-box-shadow:1px 1px 3px #222; -webkit-box-shadow:1px 1px 3px #222; box-shadow:1px 1px 3px #222; margin:0 auto; }
.hs_container .hs_area { position:absolute; overflow:hidden; }
.hs_area img { width:calc(100% - 2px); *width:100%; width:100%\0/; min-height:100%; position:absolute; top:0px; left:0px; display:none; }
.hs_area img.hs_visible { display:block; z-index:50; }
.hs_area1, .hs_area4 { border-right:2px solid #fff; }
.hs_area4, .hs_area5 { border-top:2px solid #fff; }
.hs_area3 { border-top:2px solid #fff; }
.hs_area1 { width:50%; height:66.666%; top:0px; left:0px; }
.hs_area2 { width:50%; height:33.333%; top:0px; right:0; }
.hs_area3 { width:50%; height:33.333%; max-height:calc(33.33% - 2px); top:33.333%; right:0; }
.hs_area4 { width:25%; height:33.333%; top:66.666%; left:0px; }
.hs_area5 { width:75%; height:33.333%; top:66.666%; right:0; }
.hs_area2 img,.hs_area3 img,.hs_area5 img { width:100%; }

































$(function()
{
//custom animations to use
//in the transitions
var animations = ['right', 'left', 'top', 'bottom', 'rightFade', 'leftFade', 'topFade', 'bottomFade'];
var total_anim = animations.length;
//just change this to one of your choice
var easeType = 'swing';
//the speed of each transition
var animSpeed = 450;
//caching
var $hs_container = $('#hs_container');
var $hs_areas = $hs_container.find('.hs_area');
//first preload all img
  $hs_img = $hs_container.find('img');
var total_img = $hs_img.length;
var cnt = 0;
$hs_img.each(function () {
var $this = $(this);
$('').load(function () {
++cnt;
if (cnt == total_img) {
$hs_areas.each(function () {
var $area = $(this);
//when the mouse enters the area we animate the current
//image (random animation from array animations),
//so that the next one gets visible.
//"over" is a flag indicating if we can animate
//an area or not (we don't want 2 animations
//at the same time for each area)
          $area.data('over', true).bind('mouseenter', function () {
if ($area.data('over')) {
$area.data('over', false);
//how many img in this area?
var total = $area.children().length;
//visible image
var $current = $area.find('img:visible');
//index of visible image
var idx_current = $current.index();
//the next image that's going to be displayed.
//either the next one, or the first one if the current is the last
var $next = (idx_current == total - 1) ? $area.children(':first') : $current.next();
//show next one (not yet visible)
      $next.show();
//get a random animation
var anim = animations[Math.floor(Math.random() * total_anim)];
switch (anim) {
//current slides out from the right  
case 'right':
$current.animate({
'left': $current.width() + 'px'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'left': '0px'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the left  
case 'left':
$current.animate({
'left': -$current.width() + 'px'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'left': '0px'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the top   
case 'top':
$current.animate({
'top': -$current.height() + 'px'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'top': '0px'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the bottom   
case 'bottom':
$current.animate({
'top': $current.height() + 'px'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'top': '0px'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the right  and fades out  
case 'rightFade':
$current.animate({
'left': $current.width() + 'px',
'opacity': '0'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'left': '0px',
'opacity': '1'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the left and fades out   
case 'leftFade':
$current.animate({
'left': -$current.width() + 'px', 'opacity': '0'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'left': '0px',
'opacity': '1'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the top and fades out   
case 'topFade':
$current.animate({
'top': -$current.height() + 'px',
'opacity': '0'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'top': '0px',
'opacity': '1'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
//current slides out from the bottom and fades out   
case 'bottomFade':
$current.animate({
'top': $current.height() + 'px',
'opacity': '0'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'top': '0px',
'opacity': '1'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
default:
$current.animate({
'left': -$current.width() + 'px'
},
animSpeed,
easeType,
function () {
$current.hide().css({
'z-index': '1',
'left': '0px'
});
$next.css('z-index', '50');
$area.data('over', true);
});
break;
}
}
});
});
//when clicking the hs_container all areas get slided
//(just for fun...you would probably want to enter the site
//or something similar)
        $hs_container.bind('click', function () {
$hs_areas.trigger('mouseenter');
});
}
}).attr('src', $this.attr('src'));
});
});




  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-69060-1-1.html 上篇帖子: Win8.1安装mysql-installer-community-5.6.21.0.mis 下篇帖子: 硬件升级win8.1重新安装系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表