在此处查看文章中照片中的效果:
http://www.popsci.com/science/article/2012-11/and-after-images-show-hurricane-sandys-devastation
有谁知道这是怎么做到的?我想我可以在一个固定框架内制作两个宽度可调的框架,但是手柄呢?当鼠标悬停时,框架线和手柄变亮和放大的方式?可以肯定的是,悬停事件,但是什么样的悬停事件?
在此处查看文章中照片中的效果:
http://www.popsci.com/science/article/2012-11/and-after-images-show-hurricane-sandys-devastation
有谁知道这是怎么做到的?我想我可以在一个固定框架内制作两个宽度可调的框架,但是手柄呢?当鼠标悬停时,框架线和手柄变亮和放大的方式?可以肯定的是,悬停事件,但是什么样的悬停事件?
这很简单。你有 2 DIV
s 与 2 个不同的图像(如background-image
在 css 中)相互重叠(例如绝对定位。)(也许是上面的“之前”图片)然后你有一个滑块,当拖动它时会减小重叠DIV
的宽度,使底层DIV秀!此功能可以在名为“Before/After”的 jQuery 插件中找到
链接:jQuery之前/之后
您当然可以编写自己的不依赖于 jQuery UI 的代码。
;(function($){
$.fn.slidingThingamajig = function () {
return this.each(function(){
var $this = $(this);
$this.find('.handle')
.css({cursor:'ew-resize'}) // Here's your fancy cursor with directional arrows
.on('mousedown', function(e) {
$this.addClass('resizable');
$this.parents().on('mousemove', function (e) {
$('.resizable').css({width:e.pageX - $('.resizable').offset().left});
}).on('mouseup', function(e) {
$('.resizable').removeClass('resizable');
});
e.preventDefault();
});
});
}
})(jQuery);
你可能需要稍微调整一下,但它大部分都在那里。