响应式照片墙html,使用jQuery创建响应式全屏照片墙(点击可触发Slider)

HTML

导入代码模板:

a {

color: #fff;

text-decoration: none;

}

a:hover {

text-decoration: underline;

}

Loading Image

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/1.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/2.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/3.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/4.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/5.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/6.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/7.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/8.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/9.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/10.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/11.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/12.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/13.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/14.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/15.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/16.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/17.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/18.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/19.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/20.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/21.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/22.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/23.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/24.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/25.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/26.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/27.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/28.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/29.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/30.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/31.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/32.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/33.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/34.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/35.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/36.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/1.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/2.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/3.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/4.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/5.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/6.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/7.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/8.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/9.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/10.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/11.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/12.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/13.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/14.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/15.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/16.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/17.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/18.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/19.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/20.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/21.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/22.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/23.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/24.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/25.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/26.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/27.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/28.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/29.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/30.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/31.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/32.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/33.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/34.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/35.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/36.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/1.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/2.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/3.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/4.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/5.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/6.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/7.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/8.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/9.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/10.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/11.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/12.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/13.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/14.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/15.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/16.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/17.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/18.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/19.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/20.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/21.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/22.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/23.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/24.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/25.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/26.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/27.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/28.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/29.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/30.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/31.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/32.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/33.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/34.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/35.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/36.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/1.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/2.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/3.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/4.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/5.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/6.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/7.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/8.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/9.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/10.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/11.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/12.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/13.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/14.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/15.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/16.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/17.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/18.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/19.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/20.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/21.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/22.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/23.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/24.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/25.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/26.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/27.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/28.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/29.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/30.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/31.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/32.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/33.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/34.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/35.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/36.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/1.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/2.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/3.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/4.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/5.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/6.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/7.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/8.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/9.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/10.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/11.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/12.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/13.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/14.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/15.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/16.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/17.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/18.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/19.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/20.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/21.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/22.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/23.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/24.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/25.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/26.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/27.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/28.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/29.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/30.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/31.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/32.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/33.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/34.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/35.jpg

https://tympanus.net/Tutorials/SlidingPanelPhotowallGallery/images/36.jpg

$(function() {

/* this is the index of the last clicked picture */

var current = -1;

/* number of pictures */

var totalpictures = $('#content img').size();

/* speed to animate the panel and the thumbs wrapper */

var speed = 500;

/* show the content */

$('#content').show();

/*

when the user resizes the browser window,

the size of the picture being viewed is recalculated;

*/

$(window).bind('resize', function() {

var $picture = $('#wrapper').find('img');

resize($picture);

});

/*

when hovering a thumb, animate it's opacity

for a cool effect;

when clicking on it, we load the corresponding large image;

the source of the large image is stored as

the "alt" attribute of the thumb image

*/

$('#content > img').hover(function() {

var $this = $(this);

$this.stop().animate({

'opacity': '1.0'

}, 200);

}, function() {

var $this = $(this);

$this.stop().animate({

'opacity': '0.4'

}, 200);

}).bind('click', function() {

var $this = $(this);

/* shows the loading icon */

$('#loading').show();

$('').load(function() {

$('#loading').hide();

if ($('#wrapper').find('img').length) return;

current = $this.index();

var $theImage = $(this);

/*

After it's loaded we hide the loading icon

and resize the image, given the window size;

then we append the image to the wrapper

*/

resize($theImage);

$('#wrapper').append($theImage);

/* make its opacity animate */

$theImage.fadeIn(800);

/* and finally slide up the panel */

$('#panel').animate({

'height': '100%'

}, speed, function() {

/*

if the picture has a description,

it's stored in the title attribute of the thumb;

show it if it's not empty

*/

var title = $this.attr('title');

if (title != '')

$('#description').html(title).show();

else

$('#description').empty().hide();

/*

if our picture is the first one,

don't show the "previous button"

for the slideshow navigation;

if our picture is the last one,

don't show the "next button"

for the slideshow navigation

*/

if (current == 0)

$('#prev').hide();

else

$('#prev').fadeIn();

if (current == parseInt(totalpictures - 1))

$('#next').hide();

else

$('#next').fadeIn();

/*

we set the z-index and height of the thumbs wrapper

to 0, because we want to slide it up afterwards,

when the user clicks the large image

*/

$('#thumbsWrapper').css({

'z-index': '0',

'height': '0px'

});

});

}).attr('src', $this.attr('alt'));

});

/*

when hovering a large image,

we want to slide up the thumbs wrapper again,

and reset the panel (like it was initially);

this includes removing the large image element

*/

$('#wrapper > img').live('click', function() {

$this = $(this);

$('#description').empty().hide();

$('#thumbsWrapper').css('z-index', '10')

.stop()

.animate({

'height': '100%'

}, speed, function() {

var $theWrapper = $(this);

$('#panel').css('height', '0px');

$theWrapper.css('z-index', '0');

/*

remove the large image element

and the navigation buttons

*/

$this.remove();

$('#prev').hide();

$('#next').hide();

});

});

/*

when we are viewing a large image,

if we navigate to the right/left we need to know

which image is the corresponding neighbour.

we know the index of the current picture (current),

so we can easily get to the neighbour:

*/

$('#next').bind('click', function() {

var $this = $(this);

var $nextimage = $('#content img:nth-child(' + parseInt(current + 2) + ')');

navigate($nextimage, 'right');

});

$('#prev').bind('click', function() {

var $this = $(this);

var $previmage = $('#content img:nth-child(' + parseInt(current) + ')');

navigate($previmage, 'left');

});

/*

given the next or previous image to show,

and the direction, it loads a new image in the panel.

*/

function navigate($nextimage, dir) {

/*

if we are at the end/beginning

then there's no next/previous

*/

if (dir == 'left' && current == 0)

return;

if (dir == 'right' && current == parseInt(totalpictures - 1))

return;

$('#loading').show();

$('').load(function() {

var $theImage = $(this);

$('#loading').hide();

$('#description').empty().fadeOut();

$('#wrapper img').stop().fadeOut(500, function() {

var $this = $(this);

$this.remove();

resize($theImage);

$('#wrapper').append($theImage.show());

$theImage.stop().fadeIn(800);

var title = $nextimage.attr('title');

if (title != '') {

$('#description').html(title).show();

} else

$('#description').empty().hide();

if (current == 0)

$('#prev').hide();

else

$('#prev').show();

if (current == parseInt(totalpictures - 1))

$('#next').hide();

else

$('#next').show();

});

/*

increase or decrease the current variable

*/

if (dir == 'right')

++current;

else if (dir == 'left')

--current;

}).attr('src', $nextimage.attr('alt'));

}

/*

resizes an image given the window size,

considering the margin values

*/

function resize($image) {

var windowH = $(window).height() - 100;

var windowW = $(window).width() - 80;

var theImage = new Image();

theImage.src = $image.attr("src");

var imgwidth = theImage.width;

var imgheight = theImage.height;

if ((imgwidth > windowW) || (imgheight > windowH)) {

if (imgwidth > imgheight) {

var newwidth = windowW;

var ratio = imgwidth / windowW;

var newheight = imgheight / ratio;

theImage.height = newheight;

theImage.width = newwidth;

if (newheight > windowH) {

var newnewheight = windowH;

var newratio = newheight / windowH;

var newnewwidth = newwidth / newratio;

theImage.width = newnewwidth;

theImage.height = newnewheight;

}

} else {

var newheight = windowH;

var ratio = imgheight / windowH;

var newwidth = imgwidth / ratio;

theImage.height = newheight;

theImage.width = newwidth;

if (newwidth > windowW) {

var newnewwidth = windowW;

var newratio = newwidth / windowW;

var newnewheight = newheight / newratio;

theImage.height = newnewheight;

theImage.width = newnewwidth;

}

}

}

$image.css({

'width': theImage.width + 'px',

'height': theImage.height + 'px'

});

}

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值