酷! 不同风格页面布局幻灯片特效js实现

这是一款效果非常炫酷的不同风格页面布局幻灯片特效。该特效中,通过前后导航按钮来切换幻灯片,每个幻灯片中的图片均为不同的布局效果。

该幻灯片特效使用anime.js来制作幻灯片的动画特效,并使用很多CSS3属性,需要最新版本的现代浏览器才能看到效果。对于IE浏览器,前面几种效果可以在IE11及以上的浏览器看到效果,最后一种效果由于IE浏览器不支持SVG clip-path属性,所以是看不到效果的。

使用方法 
HTML结构 
该幻灯片的基本HTML结构如下:每一个幻灯片都有各自的布局class类,和一个data-layout属性,用于制作各自的动画效果。

<div class="slideshow">
 <div class="slide slide--layout-1" data-layout="layout1">
 <div class="slide-imgwrap">
 <div class="slide__img"><div class="slide__img-inner" style="background-image: url(img/1.jpg);"></div></div>
 <div class="slide__img"><div class="slide__img-inner" style="background-image: url(img/2.jpg);"></div></div>
 <div class="slide__img"><div class="slide__img-inner" style="background-image: url(img/3.jpg);"></div></div>
 </div>
 <div class="slide__title">
 <h3 class="slide__title-main">Now or Never</h3>
 <p class="slide__title-sub">... <a href="#">Read more</a></p>
 </div>
 </div><!-- /slide -->
 <div class="slide slide--layout-2" data-layout="layout2">
 <!-- ... -->

 </div>
 <!-- ... -->
</div><!-- /slideshow --> 

CSS样式 
下面是其中一个布局的CSS样式:

/* Layout 1: 3 grid images */
.slide--layout-1 .slide__img {
 position: absolute;
 width: calc(50% - 1em);
} 

.slide--layout-1 .slide__img:first-child {
 left: 0.5em;
 height: 100%;
} 

.slide--layout-1 .slide__img:nth-child(n+2) {
 left: calc(50% + 0.5em);
 height: calc(50% - 0.5em);
} 

.slide--layout-1 .slide__img:nth-child(3) {
 top: calc(50% + 0.5em);
}

得到的效果如下图所示:

JavaScript
每一个幻灯片布局的动画效果定义在js文件中。结构为: [layout name] : { out : {navigating out properties}, in : {navigating in properties} }。可以为进入和离开的幻灯片设置不同的动画效果。下面的代码是第一个布局的示例代码:

MLSlideshow.prototype.options = {
 // Starting position.
 startIdx : 0,
 // Layout configuration.
 // [layout name] : { out : {navigating out properties}, in : {navigating in properties} }
 layoutConfig : {
 layout1 : {
 out : {
 translateX : {
 next: '-100%',
 prev: '100%'
 },
 rotateZ : {
 next: function(el, index) {
 return anime.random(-15, 0);
 },
 prev: function(el, index) {
 return anime.random(0, 15); 

 }
 },
 opacity : 0,
 duration: 1200,
 easing : 'easeOutQuint',
 itemsDelay : 80
 },
 in : {
 resetProps : {
 translateX : {
 next: '100%', 

 prev: '-100%'
 },
 rotateZ : {
 next: function(el, index) {
 return anime.random(0, 15);
 }, 

 prev: function(el, index) {
 return anime.random(-15, 0);
 }
 },
 opacity : 0,
 },
 translateX : '0%',
 rotateZ : 0,
 opacity : 1,
 duration: 700,
 easing : 'easeOutQuint',
 itemsDelay : 80

 }

 },
 layout2 : { /* ... */ },
 layout3 : { /* ... */ },
 /* ... */

 }

};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • js 幻灯片的实现

    摒弃其他的效果,最简单的轮播也就只有一条语句: parent.appendChild(parent.firstChild),不断的把列表的一个元素添加到最后一个,appendChild会将节点从原来的位置移除,所以借此可以产生切换效果. 一点,IE对文本的文本节点与其他的浏览器不同,在获取子节点的时候需要注意,另外在不同版本的FF中,children这个属性也需要注意. 下面的demo没有设置#view的overflow:hidden. demo_1: 复制代码 代码如下: <!DOCTYPE

  • js淡入淡出焦点图幻灯片效果代码分享

    本文实例讲述了javascript淡入淡出焦点图幻灯片效果.分享给大家供大家参考.具体如下: 这是一款基于javascript实现的淡入淡出焦点图幻灯片效果代码,可以自定义标题,实现过程很简单. 运行效果图:-------------------查看效果 下载源码------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的js淡入淡出焦点图幻灯片效果代码如下 <head> <meta http-equiv="Content-Ty

  • javascript实现图片切换的幻灯片效果源代码

    网页上有许多图片切换的幻灯片效果,它们大多用flash实现,那javascript能不能实现他们呢,当然可以,我自己写了一个,和大家一同分享 废话少说,看代码 复制代码 代码如下: sx.activex.imagefade={ init:function(imga,fadeint,fadeoutt){ var ti=new Array(); for(var i=0;i<imga.length;i++){ ti[i]=new Image(); ti[i].src=imga[i] } var div

  • 漂亮的js tab图片轮换效果代码(可自定义的幻灯片和图片缓冲切换)

    在线演示 http://img.jb51.net/online/tab08/index.htm li,ul{margin:0;padding:0;list-style-type:0} body{background:#eee; text-align:center;} li img{vertical-align:bottom; } .dhooo_tab{ width:460px; margin:10px; background:#fff url(images/main_bg.gif) repeat

  • JS+FLASH幻灯片播放图片脚本,整理了代码,使得调用更加方便!

    JS+FLASH幻灯片播放图片脚本,整理了代码,使得调用更加方便很多大站上都有的JS+FLASH幻灯片播放图片脚本,整理了代码,使得调用更加方便! 生成幻灯片式的网页图片效果演示 生成幻灯片式的网页图片效果演示 // 幻灯片式的网页图片滚动函数(不需要做任何改动) // 本程序由广州房产网整理,欢迎转载及提意见,版权没有 function roll_pic_flash(roll_pic_ary) { // 生成幻灯片式的网页图片滚动代码 var w = roll_pic_ary[3][0]; v

  • js带点自动图片轮播幻灯片特效代码分享

    本文实例讲述了javascript带点自动图片轮播幻灯片特效.分享给大家供大家参考.具体如下: 这是一款基于javascript实现带点自动图片轮播幻灯片特效代码,实现过程很简单. 运行效果图:-------------------查看效果 下载源码------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. (1)在head区域引入CSS样式: <link rel="stylesheet" href="css/zzsc.css&qu

  • js精美的幻灯片画集特效代码分享

    本文实例讲述了js制作精美的幻灯片画集特效.分享给大家供大家参考.具体如下: 这是一款基于javascript制作的精美幻灯片画集特效的插件,跟其他幻灯片有别的图片画廊.为什么说有所区别呢,因为这款插件的图片切换时包含4个方向的,即上下左右切换也是可以的,大家可以在实例中进行使用. 运行效果图:-------------------查看效果 下载源码------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 本实例的关键代码: var o = { init:

  • js实现3D图片逐张轮播幻灯片特效代码分享

    本文实例讲述了javascript实现3D图片逐张轮播幻灯片特效.分享给大家供大家参考.具体如下: 这是一款基于javascript实现3D图片逐张轮播幻灯片特效代码,实现过程很简单. 运行效果图:-------------------查看效果 下载源码------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的js实现3D图片逐张轮播幻灯片特效代码如下 <head> <meta http-equiv="Content-Type

  • 使用 JavaScript 创建可维护的幻灯片效果代码第1/3页

    第一步:分析问题(Analizing the problem) 创建一个好的脚本,第一步应该是去分析哪些是你要完成的:我们想要创建一个照片的幻灯片效果,并且我们想要保持维护的方便. 如何创建一个幻灯片效果 在一个网站上拥有幻灯片有几种方法: 在文档中包含所有的图片.  当他运行在无 JavaScript 状态,这是一个安全的选择.而且,当页面被载完,所有的图片也会将被载完.然而,这个方式只适用于少量的图片. 在文档中包含第一张图片,并且有一个创建幻灯片功能的服务器端脚本.  这也是相当安全的,但

  • JS实现淘宝幻灯片效果的实现方法

    实现思路: 1.for循环给数字按钮加上点击事件. 2.for循环先把按钮的样式清空,再把当前样式设置样式. 3.给每个按钮添加自定义属性index aBtn[i].index=i aBtn[2]=2 第二个按钮和第二张图片想对应,用运动框架把大图的UL每次移动-150px,因为图片高度是150px.如果移动到第n张图片就是-150*n. 4.定义变量now,用来自动播放用的.把当前图片赋值给now  now=this.index. 5.定义自动播放函数.now++ 下一张,if判断,到最后一张

随机推荐