Rumah php教程 php手册 原生JS写的幻灯片

原生JS写的幻灯片

Jun 07, 2016 am 11:39 AM

学习PHP时期,为了练习Javascript而写的幻灯片函数,个人认为还算简单使用啊,兼容性也算可以
//幻灯片<br> <br>     //该幻灯片函数只需要html页面有一个有id的div即可,将id值和图片路径数组传入即可调用,其他参数有默认值,可按需传值<br>     function slide(sid,imgs,width,height,btn_w,btn_h,interval,speed){<br> <br>         //幻灯片的属性<br>         var sid=sid;//幻灯片容器div的id值<br>         var imgs=imgs;//幻灯片图片的路径数组<br>         var width=width||800;//幻灯片的宽度,默认800px<br>         var height=height||400;//幻灯片的高度,默认400px<br>         var btn_w=btn_w||30;//幻灯片图片的宽度,默认30px<br>         var btn_h=btn_w||30;//幻灯片图片的高度,默认30px<br>         var interval=interval||3;//每张图片停留的秒数,默认3秒<br>         var speed=speed||2;//图片滑动速度的档位,默认2档,可以1档,3档<br> <br>         var images=[];//用来存放图片对象的数组<br>         var imgQty=imgs.length;//图片的数量<br>         var curImg=0;//幻灯片当前不滑动图片的数组索引<br>         var nextImg=1;//幻灯片当前滑动的图片的数组索引<br> <br>         var btns=[];//用来存放幻灯片按钮对象的数组<br> <br>         var timer1=null;//用来储存幻灯片播放的超时调用方法<br>         var timer2=null;//用来存储滑动动画的超时调用方法<br> <br>         var isDone = false; //是否滑动完成<br>         <br>         //设置幻灯片的元素的方法<br>         function setElements(){    <br> <br>             //幻灯片容器<br>             var container=document.getElementById(sid);//通过幻灯片容器id得到幻灯片的div元素对象<br>             var btnRow=document.createElement('ul');//创建按钮容器ul<br>             container.appendChild(btnRow);//将按钮容器ul插入幻灯片容器中<br>             <br>             //为幻灯片容器添加事件<br>             container.onmouseover=function(){//鼠标划入停止播放<br>                 clearTimeout(timer1);<br>             }<br>             container.onmouseout=function(){//鼠标划出3秒后继续播放<br>                 timer1=setTimeout(play,3000);<br>             }<br> <br>             //图片和按钮<br>             for(var i=0;i<img qty alt="原生JS写的幻灯片" ></imgqty>                 //创建图片<br>                 images[i]=document.createElement('img');<br>                 //为图片添加src属性<br>                 images[i].src=imgs[i];<br> <br>                 //将图片节点添加到容器中<br>                 container.appendChild(images[i]);<br> <br>                 //创建按钮<br>                 btns[i]=document.createElement('li');//li标签作为图片按钮传入btns数组中<br>                 btns[i].innerHTML=i+1;//给按钮填入序号<br>                 btnRow.appendChild(btns[i]);//将按钮节点添加到按钮栏中<br> <br>                 //为按钮添加事件<br>                 btns[i].onmouseover = switchImg;<br>                 btns[i].onclick = switchImg;<br> <br>             }<br>             <br>             //为幻灯片的元素添加css属性<br>             var head=document.getElementsByTagName('head')[0];//获取头标签<br>             var style=document.createElement('style');//创建style标签<br>             head.appendChild(style);//将style标签插入头标签中<br>             //设置css字符串<br>             var css="#slide{position:relative;width:800px;height:400px;overflow:hidden;}ul{position:absolute;right:20px;bottom:10px;z-index:9;}img{width:800px;height:400px;left:0px;top:0px;position:absolute;}li{width:30px;height:30px;margin-right:10px;float:left;background:#ccc;list-style:none;text-align:center;line-height:30px;border-radius:50%;opacity:0.8}";<br>             //css样式兼容性设计<br>             try{<br>                 style.appendChild(document.createTextNode(css));//非IE<br>             }catch(e){<br>                 style.styleSheet.cssText=css;//IE<br>             }<br> <br>             //第一次加载默认的图片层级和滑动图片的位置<br>             images[0].style.zIndex=1;//播放开始让第一幅图片为不滑动图片,层级为1<br>             images[1].style.zIndex=2;//播放开始让第二幅图片为滑动图片,层级为2<br>             images[1].style.left=width+'px';//第二幅图的位置调整到容器的右侧准备滑动<br>         <br>         }<br> <br>         //将幻灯片的元素插入页面<br>         setElements();<br> <br> <br>         //幻灯片的方法<br> <br>         //切换图片的方法<br>         function switchImg(){<br> <br>             //触发该事件的按钮的索引<br>             var btnIndex = this.innerHTML - 1;<br> <br>             //滑动完成并且触发不同的按钮的事件才会执行变换<br>             if (isDone && btnIndex != curImg) {<br> <br>                 clearTimeout(timer2);//停止之前的图片滑动<br>                 //将滑动图片立即转换为当前不滑动图片<br>                 images[curImg].style.left='0px';<br>                 images[curImg].style.zIndex=1;<br>                 //将滑动图片对应的按钮立即转换为浅色<br>                 btns[nextImg].style.background='#ccc';<br>                 btns[nextImg].style.color='#000';<br>                 //将滑动图片的数组索引更改为当前按钮对应的图片的数组索引<br>                 nextImg=this.innerHTML-1;<br>                 // //将要滑动的图片移动到容器右侧,层级设为最高,准备滑动<br>                 images[nextImg].style.left=width+'px';<br>                 images[nextImg].style.zIndex=2;<br>                 //立即滑动<br>                 move();<br>             }<br>                         <br>         }<br> <br>         //让图片完整的滑动一次的方法<br>         function move(){<br>             //滑动开始<br>             isDone = false;<br>             //将上一张滑动图片的样式和下一张滑动图片的样式做一下改变<br>             btns[curImg].style.background='#ccc';<br>             btns[curImg].style.color='#000';<br>             btns[nextImg].style.background='#333';<br>             btns[nextImg].style.color='#fff';<br> <br>             if(parseInt(images[nextImg].style.left) > 0){//判断滑动图片的left是否达到0位置<br>                 images[nextImg].style.left=Math.floor((parseInt(images[nextImg].style.left)-(parseInt(images[nextImg].style.left)-0)/(30/speed)))+'px';//没到达则每次滑动剩下路程的25分之一<br>                 timer2=setTimeout(move,10);//超时调用slide,用递归加setTimeout模仿setInterval<br>             }else{//滑动图片的left到达0位置<br>                 clearTimeout(timer2);//销毁滑动的延时调用方法<br>                 //所有图片的层级重置为0<br>                 for (var i = 0; i                      images[i].style.zIndex = 0;<br>                 }<br>                 curImg = nextImg;//将滑动完的图片的数组索引赋给不滑动图片的数组索引变量<br>                 nextImg == (imgQty - 1) ? nextImg = 0 : nextImg ++;//判断滑动完的图片的是否最后一张,是则赋为0,否则加1<br>                 //重新设置新一轮的不滑动图片和滑动图片图片的定位和层级属性<br>                 images[curImg].style.left='0px';<br>                 images[curImg].style.zIndex=1;<br>                 images[nextImg].style.left=width+'px';<br>                 images[nextImg].style.zIndex=2;    <br>                 //滑动完成<br>                 isDone = true;                <br>             }<br>         }<br> <br>         //循环播放的方法<br>         function play(){<br>             move();<br>             timer1=setTimeout(play,interval*1000);//停留三秒钟<br>         }<br>         //立即播放<br>         play();            <br>     }

AD:真正免费,域名+虚机+企业邮箱=0元

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ketahui tentang contoh kod pengenalan untuk pengaturcaraan Python Ketahui tentang contoh kod pengenalan untuk pengaturcaraan Python Jan 04, 2024 am 10:50 AM

Ketahui tentang pengaturcaraan Python dengan contoh kod pengenalan Python ialah bahasa pengaturcaraan yang mudah dipelajari tetapi berkuasa. Bagi pemula, adalah sangat penting untuk memahami contoh kod pengenalan pengaturcaraan Python. Artikel ini akan memberikan anda beberapa contoh kod konkrit untuk membantu anda bermula dengan cepat. Cetak HelloWorldprint("HelloWorld") Ini ialah contoh kod paling mudah dalam Python. Fungsi print() digunakan untuk mengeluarkan kandungan yang ditentukan

Pembolehubah PHP dalam tindakan: 10 contoh penggunaan sebenar Pembolehubah PHP dalam tindakan: 10 contoh penggunaan sebenar Feb 19, 2024 pm 03:00 PM

Pembolehubah PHP menyimpan nilai semasa runtime program dan sangat penting untuk membina aplikasi WEB yang dinamik dan interaktif. Artikel ini melihat secara mendalam pembolehubah PHP dan menunjukkannya dalam tindakan dengan 10 contoh kehidupan sebenar. 1. Simpan input pengguna $nama pengguna=$_POST["nama pengguna"];$passWord=$_POST["kata laluan"] Contoh ini mengekstrak nama pengguna dan kata laluan daripada penyerahan borang dan menyimpannya dalam pembolehubah untuk pemprosesan selanjutnya. 2. Tetapkan nilai konfigurasi $database_host="localhost";$database_username="username";$database_pa

Contoh pengaturcaraan bahasa Go: contoh kod dalam pembangunan web Contoh pengaturcaraan bahasa Go: contoh kod dalam pembangunan web Mar 04, 2024 pm 04:54 PM

"Contoh Pengaturcaraan Bahasa Pergi: Contoh Kod dalam Pembangunan Web" Dengan perkembangan pesat Internet, pembangunan Web telah menjadi bahagian yang amat diperlukan dalam pelbagai industri. Sebagai bahasa pengaturcaraan dengan fungsi berkuasa dan prestasi unggul, bahasa Go semakin digemari oleh pembangun dalam pembangunan web. Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk pembangunan Web melalui contoh kod tertentu, supaya pembaca boleh memahami dengan lebih baik dan menggunakan bahasa Go untuk membina aplikasi Web mereka sendiri. 1. Pelayan HTTP Mudah Mula-mula, mari kita mulakan dengan a

Java melaksanakan kod isihan gelembung mudah Java melaksanakan kod isihan gelembung mudah Jan 30, 2024 am 09:34 AM

Contoh kod paling ringkas bagi jenis gelembung Java ialah algoritma pengisihan biasa. Idea asasnya ialah melaraskan urutan secara beransur-ansur ke dalam urutan tersusun melalui perbandingan dan pertukaran elemen bersebelahan. Berikut ialah contoh kod Java ringkas yang menunjukkan cara melaksanakan isihan gelembung: publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){int

Daripada pemula hingga mahir: Pelaksanaan kod struktur data yang biasa digunakan dalam bahasa Go Daripada pemula hingga mahir: Pelaksanaan kod struktur data yang biasa digunakan dalam bahasa Go Mar 04, 2024 pm 03:09 PM

Tajuk: Dari Permulaan hingga Penguasaan: Pelaksanaan Kod Struktur Data Yang Biasa Digunakan dalam Bahasa Go Struktur data memainkan peranan penting dalam pengaturcaraan dan merupakan asas pengaturcaraan. Dalam bahasa Go, terdapat banyak struktur data yang biasa digunakan, dan menguasai pelaksanaan struktur data ini adalah penting untuk menjadi seorang pengaturcara yang baik. Artikel ini akan memperkenalkan struktur data yang biasa digunakan dalam bahasa Go dan memberikan contoh kod yang sepadan untuk membantu pembaca daripada mula menjadi mahir dalam struktur data ini. 1. Array Array ialah struktur data asas, kumpulan daripada jenis yang sama

Panduan Sambungan Pengkomputeran Tepi Awan Huawei: Contoh kod Java untuk melaksanakan antara muka dengan cepat Panduan Sambungan Pengkomputeran Tepi Awan Huawei: Contoh kod Java untuk melaksanakan antara muka dengan cepat Jul 05, 2023 pm 09:57 PM

Panduan Sambungan Pengkomputeran Tepi Awan Huawei: Contoh Kod Java untuk Melaksanakan Antara Muka Dengan Pantas Dengan perkembangan pesat teknologi IoT dan peningkatan pengkomputeran tepi, semakin banyak perusahaan mula memberi perhatian kepada aplikasi pengkomputeran tepi. Huawei Cloud menyediakan perkhidmatan pengkomputeran edge, menyediakan perusahaan dengan sumber pengkomputeran yang sangat boleh dipercayai dan persekitaran pembangunan yang mudah, menjadikan aplikasi pengkomputeran tepi lebih mudah untuk dilaksanakan. Artikel ini akan memperkenalkan cara untuk melaksanakan antara muka pengkomputeran tepi Awan Huawei dengan cepat melalui kod Java. Pertama, kita perlu menyediakan persekitaran pembangunan. Pastikan anda memasang Java Development Kit (

Cara menggunakan PHP untuk menulis kod fungsi pengurusan inventori dalam sistem pengurusan inventori Cara menggunakan PHP untuk menulis kod fungsi pengurusan inventori dalam sistem pengurusan inventori Aug 06, 2023 pm 04:49 PM

Cara menggunakan PHP untuk menulis kod fungsi pengurusan inventori dalam sistem pengurusan inventori adalah bahagian yang amat diperlukan dalam banyak perusahaan. Bagi syarikat yang mempunyai berbilang gudang, fungsi pengurusan inventori amat penting. Dengan mengurus dan menjejak inventori dengan betul, syarikat boleh memperuntukkan inventori antara gudang yang berbeza, mengoptimumkan kos operasi dan meningkatkan kecekapan kerjasama. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menulis kod bagi fungsi pengurusan gudang inventori dan memberikan anda contoh kod yang berkaitan. 1. Wujudkan pangkalan data sebelum mula menulis kod untuk fungsi pengurusan gudang inventori.

Panduan dan Contoh: Belajar untuk melaksanakan algoritma isihan pemilihan dalam Java Panduan dan Contoh: Belajar untuk melaksanakan algoritma isihan pemilihan dalam Java Feb 18, 2024 am 10:52 AM

Panduan Menulis Kod Kaedah Isih Pemilihan Java dan Contoh Isihan pemilihan ialah algoritma pengisihan yang mudah dan intuitif Ideanya adalah untuk memilih elemen terkecil (atau terbesar) daripada elemen yang tidak diisih setiap kali dan menukarnya sehingga semua elemen diisih. Artikel ini akan menyediakan panduan menulis kod untuk pengisihan pemilihan dan melampirkan kod sampel Java tertentu. Prinsip Algoritma Prinsip asas isihan pemilihan ialah membahagikan tatasusunan yang hendak diisih kepada dua bahagian, diisih dan tidak diisih Setiap kali, elemen terkecil (atau terbesar) dipilih daripada bahagian yang tidak diisih dan diletakkan di hujung bahagian yang diisih. Ulang perkara di atas

See all articles