以下是 jQuery实现图片模糊显示特效代码 的示例演示效果:
部分效果截图:
HTML代码(index.html):
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery实现图片模糊显示特效</title>
<link rel="stylesheet" type="text/css" href="css/default.css">
<link href="css/refocus.css" rel="stylesheet" media="all">
</head>
<body>
<div class="refocus" id="refocus-1">
<div class="refocus-img-bg"></div>
<div class="refocus-img focus-in">
<img src="13.jpg" alt=""/>
</div>
<div class="refocus-text-container">
<div class="t">
<div class="tc">
<div class="htmleaf-header">
</div>
</div>
</div>
</div>
</div>
<script src="js/jquery-2.1.1.min.js" type="text/javascript"></script>
<script type="text/javascript" src="js/jquery.refocus.js"></script>
<script type="text/javascript">
$(window).load(function () {
$('#refocus-1').refocus();
});
</script>
</body>
</html>
JS代码(jquery.refocus.js):
/** * jQuery Refocus * A lightweight jQuery plugin to focus and unfocus like a camera * http://jonkpirateboy.github.io/refocus/ * Licensed under the MIT license. * Copyright 2015 Johan Stenström */
jQuery.fn.extend({
refocus:function (){
container = $(this);
imgSrc = $(this).find('.refocus-img img').attr('src');
containerHeight = $(this).find('.refocus-img img').height()*0.8;
contentHeight = $(this).find('.refocus-text-container .t').height();
$(this).find('.refocus-img,.refocus-img-bg').css('background-image','url('+imgSrc+')');
$(this).css('height',containerHeight);
$(this).css('min-height',contentHeight);
$(this).find('.focus-out,.focus-in').addClass('refocus');
$(this).find('.focus-out.refocus').removeClass('focus-out refocus').addClass('focus-in');
$(this).find('.focus-in.refocus').removeClass('focus-in refocus').addClass('focus-out');
}
}
);
CSS代码(default.css):
body,html{font-size:100%;padding:0;margin:0;}
/* Reset */
*,*:after,*:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
/* Clearfix hack by Nicolas Gallagher:http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,.clearfix:after{content:" ";display:table;}
.clearfix:after{clear:both;}
body{background:#f9f7f6;color:#404d5b;font-weight:500;font-size:1.05em;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
a{color:#2fa0ec;text-decoration:none;outline:none;}
a:hover,a:focus{color:#74777b;}
.htmleaf-container{margin:0 auto;text-align:center;overflow:hidden;}
.htmleaf-content{font-size:150%;padding:1em 0;}
.htmleaf-content h2{margin:0 0 2em;opacity:0.1;}
.htmleaf-content p{margin:1em 0;padding:5em 0 0 0;font-size:0.65em;}
.bgcolor-1{background:#f0efee;}
.bgcolor-2{background:#f9f9f9;}
.bgcolor-3{background:#e8e8e8;}
/*light grey*/
.bgcolor-4{background:#2f3238;color:#fff;}
/*Dark grey*/
.bgcolor-5{background:#df6659;color:#521e18;}
/*pink1*/
.bgcolor-6{background:#2fa8ec;}
/*sky blue*/
.bgcolor-7{background:#d0d6d6;}
/*White tea*/
.bgcolor-8{background:#3d4444;color:#fff;}
/*Dark grey2*/
.bgcolor-9{background:#ef3f52;color:#fff;}
/*pink2*/
.bgcolor-10{background:#64448f;color:#fff;}
/*Violet*/
.bgcolor-11{background:#3755ad;color:#fff;}
/*dark blue*/
.bgcolor-12{background:#3498DB;color:#fff;}
/*light blue*/
/* Header */
.htmleaf-header{padding:1em 190px 1em;letter-spacing:-1px;text-align:center;}
.htmleaf-header h1{color:#fff;font-weight:600;font-size:2em;line-height:1;margin-bottom:0;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
.htmleaf-header h1 span{font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;display:block;font-size:60%;font-weight:400;padding:0.8em 0 0.5em 0;color:#fff;}
/*nav*/
.htmleaf-demo a{color:#1d7db1;text-decoration:none;}
.htmleaf-demo{width:100%;padding-bottom:1.2em;}
.htmleaf-demo a{display:inline-block;margin:0.5em;padding:0.6em 1em;border:3px solid #1d7db1;font-weight:700;}
.htmleaf-demo a:hover{opacity:0.6;}
.htmleaf-demo a.current{background:#1d7db1;color:#fff;}
/* Top Navigation Style */
.htmleaf-links{position:relative;display:inline-block;white-space:nowrap;font-size:1.5em;text-align:center;}
.htmleaf-links::after{position:absolute;top:0;left:50%;margin-left:-1px;width:2px;height:100%;background:#dbdbdb;content:'';-webkit-transform:rotate3d(0,0,1,22.5deg);transform:rotate3d(0,0,1,22.5deg);}
.htmleaf-icon{display:inline-block;margin:0.5em;padding:0em 0;width:1.5em;text-decoration:none;}
.htmleaf-icon span{display:none;}
.htmleaf-icon:before{margin:0 5px;text-transform:none;font-weight:normal;font-style:normal;font-variant:normal;font-family:'icomoon';line-height:1;speak:none;-webkit-font-smoothing:antialiased;}
/* footer */
.htmleaf-footer{width:100%;padding-top:10px;}
.htmleaf-small{font-size:0.8em;}
.center{text-align:center;}
/****/
.related{color:#fff;background:#333;text-align:center;font-size:1.25em;padding:0.5em 0;overflow:hidden;}
.related > a{vertical-align:top;width:calc(100% - 20px);max-width:340px;display:inline-block;text-align:center;margin:20px 10px;padding:25px;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
.related a{display:inline-block;text-align:left;margin:20px auto;padding:10px 20px;opacity:0.8;-webkit-transition:opacity 0.3s;transition:opacity 0.3s;-webkit-backface-visibility:hidden;}
.related a:hover,.related a:active{opacity:1;}
.related a img{max-width:100%;opacity:0.8;border-radius:4px;}
.related a:hover img,.related a:active img{opacity:1;}
.related h3{font-family:"Microsoft YaHei",sans-serif;}
.related a h3{font-weight:300;margin-top:0.15em;color:#fff;}
/* icomoon */
.icon-htmleaf-home-outline:before{content:"\e5000";}
.icon-htmleaf-arrow-forward-outline:before{content:"\e5001";}
@media screen and (max-width:50em){.htmleaf-header{padding:3em 10% 4em;}
.htmleaf-header h1{font-size:2em;}
}
@media screen and (max-width:40em){.htmleaf-header h1{font-size:1.5em;}
}
@media screen and (max-width:30em){.htmleaf-header h1{font-size:1.2em;}
}
CSS代码(refocus.css):
.refocus{position:relative;overflow:hidden;}
.refocus .refocus-img,.refocus .refocus-img-bg{position:absolute;margin-left:-10%;margin-top:-10%;width:120%;height:120%;background-size:cover;overflow:hidden;}
.refocus .refocus-img img{display:none;width:100%;height:auto;}
.refocus .refocus-text-container{position:absolute;top:0;width:100%;}
.refocus .t{display:table;height:100%;width:100%;}
.refocus .t .tc{display:table-cell;height:100%;width:100%;vertical-align:middle;}
.refocus .refocus-text-container{height:100%;}
.refocus .focus-in,.refocus .focus-out{transition:filter 3s ease 0.5s;-webkit-transition:-webkit-filter 3s ease 0.5s;}
.refocus .focus-out,.refocus .refocus-img-bg{filter:blur(10px);-webkit-filter:blur(10px);}
.refocus .focus-in{filter:blur(0);-webkit-filter:blur(0);}
.refocus .focus-in.refocus-img-bg,.refocus .focus-out.refocus-img-bg{transition:all 0s ease 0s;}