缩放图片灯箱
Zoom image lightbox
我正在寻找一个灯箱 jQuery 插件,它可以像 Highslide 一样缩放点击的图像 http://highslide.com/#examples 但它必须很小(Highslide 的核心是 57kb)并且响应迅速。
它可以非常简单。我不需要画廊等
你知道好的替代品吗?
所有你需要的:
将 data-darkbox
添加到您的图片:
<img data-darkbox src="image.jpg">
CSS:
/* DARKBOX STYLES */
#darkbox{
position:fixed;
z-index:9999;
background:rgba(0,0,0,0.8) no-repeat none 50%/contain;
box-shadow:0 0 0 3000px rgba(0,0,0,0.8);
opacity:0; visibility:hidden;
}
#darkbox.on{
opacity:1; visibility:visible;
height:90% !important; width:90% !important;
left:5% !important; top:5% !important;
}
#darkbox:after{
position:absolute;
right:0; top:0;
font-size:2em;
content:"A2F";
color:#fff;
cursor:pointer;
}
jQuery
var $darkbox = $("<div/>",{id:"darkbox"}).on("click", function(){
$(this).removeClass("on");
}).appendTo("body");
$('img[data-darkbox]').css({cursor:"pointer"}).on("click",function(){
var o=this.getBoundingClientRect();
$darkbox.css({
transition:"0s",
backgroundImage:"url("+this.src+")",
left:o.left, top:o.top,
height:this.height, width:this.width
});
setTimeout(function(){
$darkbox.css({transition:".8s"}).addClass("on");
},5);
});
我正在寻找一个灯箱 jQuery 插件,它可以像 Highslide 一样缩放点击的图像 http://highslide.com/#examples 但它必须很小(Highslide 的核心是 57kb)并且响应迅速。 它可以非常简单。我不需要画廊等
你知道好的替代品吗?
所有你需要的:
将 data-darkbox
添加到您的图片:
<img data-darkbox src="image.jpg">
CSS:
/* DARKBOX STYLES */
#darkbox{
position:fixed;
z-index:9999;
background:rgba(0,0,0,0.8) no-repeat none 50%/contain;
box-shadow:0 0 0 3000px rgba(0,0,0,0.8);
opacity:0; visibility:hidden;
}
#darkbox.on{
opacity:1; visibility:visible;
height:90% !important; width:90% !important;
left:5% !important; top:5% !important;
}
#darkbox:after{
position:absolute;
right:0; top:0;
font-size:2em;
content:"A2F";
color:#fff;
cursor:pointer;
}
jQuery
var $darkbox = $("<div/>",{id:"darkbox"}).on("click", function(){
$(this).removeClass("on");
}).appendTo("body");
$('img[data-darkbox]').css({cursor:"pointer"}).on("click",function(){
var o=this.getBoundingClientRect();
$darkbox.css({
transition:"0s",
backgroundImage:"url("+this.src+")",
left:o.left, top:o.top,
height:this.height, width:this.width
});
setTimeout(function(){
$darkbox.css({transition:".8s"}).addClass("on");
},5);
});