Home Web Front-end H5 Tutorial 纯js和CSS3炫酷自动幻灯片特效

纯js和CSS3炫酷自动幻灯片特效

May 11, 2018 pm 04:35 PM
ht

简要教程
  Karrot Slider是一款纯Javascript和CSS3制作的自动播放的幻灯片插件。该幻灯片没有任何外部依赖,内置有8种不同的动画过渡效果。该幻灯片支持响应式图片设计模式,也可以制作为全屏幻灯片模式。

  使用方法
  使用该幻灯片插件需要引入slider.css和sliderEffects.js文件。

<link href="css/slider.css?7.1.33" rel="stylesheet" type="text/css" /> 
<script src="js/sliderEffects.js?7.1.33"></script>
Copy after login

复制代码 

HTML结构  创建一个带ID号的<p>,然后设置它的宽度和高度,并将第一张图片放置在这个<p>中。
<p id="slider" style="width: 900px; height: 505px; margin: auto;"> 
<img src="images/1.jpg" > 
</p>
Copy after login

复制代码

8种内置过渡动画效果的使用  该幻灯片内置了8种不同的动画过渡效果:
  Dissolve
  Slide Up
  Slide Down
  Slide Left
  Slide Right
  Mosaic
  Window
  Doors
  所有的效果函数都包含2个参数,第一个是当前图片的引用,第二个是下一张图片的引用。
//effect(current, next); 
KSDissolve("images/1.jpg", "images/2.jpg");
KSSlideUp("images/1.jpg", "images/2.jpg");
KSSlideDown("images/1.jpg", "images/2.jpg");
KSSlideLeft("images/1.jpg", "images/2.jpg");
KSSlideRight("images/1.jpg", "images/2.jpg");
KSMosaic("images/1.jpg", "images/2.jpg");
KSWindows("images/1.jpg", "images/2.jpg");
KSDoors("images/1.jpg", "images/2.jpg");
Copy after login

复制代码

 初始化插件  要初始化该幻灯片插件,可以创建3个变量:一个图片数组,图片显示的时间和当前图片的下标。
var images = ["images/1.jpg" , "images/2.jpg" , "images/3.jpg", "images/4.jpg" ];
var timing = 3000;
var currentImg = 1;
Copy after login

复制代码

 然后创建一个函数来选择下一张图片,并可以设置过渡到下一张图片时的动画效果。
function karrotSlider() { 
var nextimg = (currentImg + 1) > images.length ? 1 : currentImg + 1 ;
var effect = Math.floor (Math.random()*6 +1 ); 
switch (effect) { 
case 1: 
KSDissolve(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 2: 
KSSlideUp(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 3: 
KSSlideDown(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 4: 
KSSlideLeft(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 5: 
KSSlideRight(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 6: 
KSMosaic(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 7: 
KSWindows(images[currentImg- 1], images[nextimg- 1]) 
break; 
case 8: 
KSDoors(images[currentImg- 1], images[nextimg- 1]) 
break; 
} 
currentImg = (currentImg + 1) > images.length ? 1 : currentImg + 1;
}
Copy after login

复制代码

最后使用setInterval()函数来调用这个函数。
setInterval(function () { karrotSlider() } , timing);
Copy after login

  注意:所有的图片必须尺寸相同。如果想制作全屏幻灯片,可以在body结束之前调用fullScreen();函数。
   


Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How do I use viewport meta tags to control page scaling on mobile devices? How do I use viewport meta tags to control page scaling on mobile devices? Mar 13, 2025 pm 08:00 PM

How do I use viewport meta tags to control page scaling on mobile devices?

How to Add Audio to My HTML5 Website? How to Add Audio to My HTML5 Website? Mar 10, 2025 pm 03:01 PM

How to Add Audio to My HTML5 Website?

How do I use the HTML5 Page Visibility API to detect when a page is visible? How do I use the HTML5 Page Visibility API to detect when a page is visible? Mar 13, 2025 pm 07:51 PM

How do I use the HTML5 Page Visibility API to detect when a page is visible?

How to Use HTML5 Forms for User Input? How to Use HTML5 Forms for User Input? Mar 10, 2025 pm 02:59 PM

How to Use HTML5 Forms for User Input?

How do I handle user location privacy and permissions with the Geolocation API? How do I handle user location privacy and permissions with the Geolocation API? Mar 18, 2025 pm 02:16 PM

How do I handle user location privacy and permissions with the Geolocation API?

How do I use the HTML5 Notifications API to display desktop notifications? How do I use the HTML5 Notifications API to display desktop notifications? Mar 13, 2025 pm 07:57 PM

How do I use the HTML5 Notifications API to display desktop notifications?

How do I use the HTML5 Drag and Drop API for interactive user interfaces? How do I use the HTML5 Drag and Drop API for interactive user interfaces? Mar 18, 2025 pm 02:17 PM

How do I use the HTML5 Drag and Drop API for interactive user interfaces?

How to Create Interactive Games with HTML5 and JavaScript? How to Create Interactive Games with HTML5 and JavaScript? Mar 10, 2025 pm 06:34 PM

How to Create Interactive Games with HTML5 and JavaScript?

See all articles