原生javascript图片自动或手动切换示例附演示源码_javascript技巧
一、效果图
二、html代码
- 1
- 2
- 3
三、源代码
var $ = function (id) {
return "string" == typeof id ? document.getElementById(id) : id;
};
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}
var TransformView = Class.create();
TransformView.prototype = {
//容器对象,滑动对象,切换参数,切换数量
initialize: function(container, slider, parameter, count, options) {
if(parameter var oContainer = $(container), oSlider = $(slider), oThis = this;
this.Index = 0;//当前索引
this._timer = null;//定时器
this._slider = oSlider;//滑动对象
this._parameter = parameter;//切换参数
this._count = count || 0;//切换数量
this._target = 0;//目标参数
this.SetOptions(options);
this.Up = !!this.options.Up;
this.Step = Math.abs(this.options.Step);
this.Time = Math.abs(this.options.Time);
this.Auto = !!this.options.Auto;
this.Pause = Math.abs(this.options.Pause);
this.onStart = this.options.onStart;
this.onFinish = this.options.onFinish;
oContainer.style.overflow = "hidden";
oContainer.style.position = "relative";
oSlider.style.position = "absolute";
oSlider.style.top = oSlider.style.left = 0;
},
//设置默认属性
SetOptions: function(options) {
this.options = {//默认值
Up: true,//是否向上(否则向左)
Step: 5,//滑动变化率
Time: 10,//滑动延时
Auto: true,//是否自动转换
Pause: 2000,//停顿时间(Auto为true时有效)
onStart: function(){},//开始转换时执行
onFinish: function(){}//完成转换时执行
};
Object.extend(this.options, options || {});
},
//开始切换设置
Start: function() {
if(this.Index this.Index = this._count - 1;
} else if (this.Index >= this._count){ this.Index = 0; }
this._target = -1 * this._parameter * this.Index;
this.onStart();
this.Move();
},
//移动
Move: function() {
clearTimeout(this._timer);
var oThis = this, style = this.Up ? "top" : "left",
iNow = parseInt(this._slider.style[style]) || 0,
iStep = this.GetStep(this._target, iNow);
if (iStep != 0) {
this._slider.style[style] = (iNow + iStep) + "px";
this._timer = setTimeout(function(){ oThis.Move(); }, this.Time);
} else {
this._slider.style[style] = this._target + "px";
this.onFinish();
if (this.Auto) { this._timer = setTimeout(function(){ oThis.Index++; oThis.Start(); }, this.Pause); }
}
},
//获取步长
GetStep: function(iTarget, iNow) {
var iStep = (iTarget - iNow) / this.Step;
if (iStep == 0) return 0;
if (Math.abs(iStep) 0 ? 1 : -1);
return iStep;
},
//停止
Stop: function(iTarget, iNow) {
clearTimeout(this._timer);
this._slider.style[this.Up ? "top" : "left"] = this._target + "px";
}
};
window.onload=function(){
function Each(list, fun){
for (var i = 0, len = list.length; i };
var objs = $("idNum2").getElementsByTagName("li");
var tv = new TransformView("idTransformView2", "idSlider2", 408, 3, {
onStart: function(){ Each(objs, function(o, i){ o.className = tv.Index == i ? "on" : ""; }) },//按钮样式
Up: false
});
tv.Start();
Each(objs, function(o, i){
o.onmouseover = function(){
o.className = "on";
tv.Auto = false;
tv.Index = i;
tv.Start();
}
o.onmouseout = function(){
o.className = "";
tv.Auto = true;
tv.Start();
}
})
}
一看就名目了然了,所以就不细讲解代码!
演示及源文件下载

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk mencapai kesan penukaran gelongsor kiri dan kanan yang lancar bagi imej dengan JavaScript? Dengan perkembangan Internet, imej sering digunakan sebagai elemen penting halaman dalam reka bentuk web. Kesan penukaran gambar memainkan kesan penting pada keindahan dan interaktiviti halaman. Dalam artikel ini, kami akan meneroka cara menggunakan JavaScript untuk mencapai kesan penukaran gelongsor kiri-kanan yang lancar bagi imej dan melampirkan contoh kod tertentu. Untuk mencapai kesan suis gelongsor kiri dan kanan gambar yang lancar, anda perlu melakukan perkara berikut terlebih dahulu: Cipta bekas gambar dan gunakan

Untuk melaksanakan kaedah append() dalam js asli, contoh kod khusus diperlukan Semasa menulis kod JavaScript, selalunya perlu menambah kandungan baharu pada elemen tertentu dalam halaman web. Operasi biasa adalah untuk menetapkan kandungan HTML elemen melalui atribut innerHTML. Walau bagaimanapun, menggunakan atribut innerHTML kadangkala mengakibatkan kehilangan pendengar acara, gaya, dsb. di dalam elemen. Untuk melaksanakan fungsi menambah kandungan dengan lebih baik, kami boleh melaksanakan kaedah append() sendiri. Kaedah append() boleh

Kaedah dan teknik tentang cara mencapai kesan karusel imej melalui CSS tulen Dalam reka bentuk web moden, kesan karusel imej sering digunakan untuk memaparkan berbilang imej atau iklan secara bergilir-gilir. Terdapat banyak cara untuk mencapai kesan karusel imej, salah satu cara biasa ialah menggunakan animasi CSS. Artikel ini akan memperkenalkan kaedah dan teknik tentang cara untuk mencapai kesan karusel imej melalui CSS tulen dan memberikan contoh kod khusus. 1. Struktur HTML Pertama, elemen imej untuk karusel perlu disediakan dalam HTML. Berikut ialah contoh struktur HTML yang mudah: &l

Mencipta kesan penukaran imej responsif adalah salah satu tugas biasa dalam pembangunan bahagian hadapan. Dalam artikel ini, kami akan menggunakan HTML, CSS dan jQuery untuk mencapai kesan ini. Di bawah ialah langkah terperinci dan contoh kod khusus. Struktur HTML Pertama, kita perlu mencipta struktur HTML yang diperlukan untuk kesan penukaran imej. Anda boleh menggunakan contoh kod berikut untuk mencipta struktur HTML yang mudah. <divclass="gelangsar-bekas">

Bagaimana untuk mencapai penukaran imej dan kesan karusel melalui Vue? Vue ialah rangka kerja JavaScript untuk membina antara muka pengguna yang menyediakan cara yang elegan dan cekap untuk mengendalikan data dan logik interaksi dalam aplikasi web. Salah satu daripada banyak ciri hebat Vue ialah ia boleh mengendalikan penukaran imej dan kesan karusel dengan mudah. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Vue untuk mencapai kesan ini. Pertama, kita perlu menyediakan beberapa struktur dan gaya HTML asas untuk memaparkan imej. Kita boleh menggunakan <i

Bagaimana untuk mencapai kesan penukaran gelongsor kiri dan kanan yang lancar bagi imej dengan JavaScript sambil menambah animasi zum dan pudar? Dalam pembangunan tapak web, kesan pensuisan gelongsor imej adalah keperluan yang sangat biasa Di sini kami akan memperkenalkan cara menggunakan JavaScript untuk mencapai kesan pensuisan gelongsor kiri dan kanan yang lancar, sambil menambah animasi zum dan pudar. Artikel ini akan memberikan contoh kod terperinci supaya anda boleh mencapai kesan ini dengan mudah. Pertama, kita perlu menyediakan bekas dalam HTML untuk meletakkan imej, dan menetapkan bekas itu

Bagaimana untuk menggunakan JavaScript untuk mencapai kesan kecerunan penukaran imej? Dengan perkembangan Internet, reka bentuk laman web memberi lebih banyak perhatian kepada pengalaman pengguna. Penukaran imej ialah salah satu kesan interaktif biasa pada tapak web Penukaran kecerunan imej boleh menarik perhatian pengguna dengan lebih baik. Artikel ini akan memperkenalkan cara menggunakan JavaScript untuk mencapai kesan kecerunan penukaran imej dan memberikan contoh kod khusus. Sebelum kita mula, kita perlu menyediakan beberapa sumber imej. Katakan kita mempunyai tiga gambar, iaitu "image1.jpg", "

Cara menggunakan Layui untuk mencapai kesan karusel penukaran imej memerlukan tajuk sampel kod khusus: Penjelasan terperinci tentang menggunakan Layui untuk mencapai kesan karusel penukaran imej Pengenalan: Dalam reka bentuk web moden, kesan karusel penukaran imej telah menjadi salah satu elemen biasa. Menggunakan karusel imej boleh menjadikan halaman web lebih dinamik dan menarik. Artikel ini akan menggunakan Layui sebagai asas untuk memperkenalkan cara mencapai kesan karusel penukaran imej, dan memberikan contoh kod khusus. 1. Pengenalan kepada komponen karusel Layui Layui ialah rangka kerja UI bahagian hadapan klasik, yang merangkumi
