Heim php教程 php手册 JavaScript 图片滑动切换效果

JavaScript 图片滑动切换效果

Jul 11, 2016 pm 08:00 PM
javascript 代码 切换 图片 开源 效果 滑动 编程 编程语言 软件开发

序一(08/07/06)

看到alibaba的一个图片切换效果,感觉不错,想拿来用用。但代码一大堆的,看着昏,还是自己来吧。
由于有了做图片滑动展示效果的经验,做这个就容易得多了。


序二(09/03/19)

自写了Tween缓动之后就很想重新写过这个效果,近来有点时间,终于可以动手了。
除了改成Tween缓动,也改进了程序算法,不过原理还是一样的。


效果预览

<script> new SlideTrans("idContainer", "idSlider", 3, { Vertical: false }).Run(); </script>
仿淘宝/alibaba图片切换:
  • 图片上传预览
  • 多级联动菜单
  • 浮动定位提示
  • 数据延迟加载
  • 简便文件上传

<script> var nums = [], timer, n = $$("idSlider2").getElementsByTagName("li").length, st = new SlideTrans("idContainer2", "idSlider2", n, { onStart: function(){//设置按钮样式 forEach(nums, function(o, i){ o.className = st.Index == i ? "on" : ""; }) } }); for(var i = 1; i <= n; AddNum(i++)){}; function AddNum(i){ var num = $$("idNum").appendChild(document.createElement("li")); num.innerHTML = i--; num.onmouseover = function(){ timer = setTimeout(function(){ num.className = "on"; st.Auto = false; st.Run(i); }, 200); } num.onmouseout = function(){ clearTimeout(timer); num.className = ""; st.Auto = true; st.Run(); } nums[i] = num; } st.Run(); $$("idAuto").onclick = function(){ if(st.Auto){ st.Auto = false; st.Stop(); this.value = "自动"; }else{ st.Auto = true; st.Run(); this.value = "停止"; } } $$("idNext").onclick = function(){ st.Next(); } $$("idPre").onclick = function(){ st.Previous(); } $$("idTween").onchange = function(){ switch (parseInt(this.value)){ case 2 : st.Tween = Tween.Bounce.easeOut; break; case 1 : st.Tween = Tween.Back.easeOut; break; default : st.Tween = Tween.Quart.easeOut; } } </script>

 


程序说明

原理就是通过不断设置滑动对象的left(水平切换)和top(垂直切换)来实现图片切换的动态效果。

首先需要一个容器,程序会自动设置容器overflow为hidden,如果不是相对或绝对定位会同时设置position为relative,
滑动对象会设置为绝对定位:

var p = CurrentStyle(this._container).position;
== "relative" || p == "absolute" || (this._container.style.position = "relative");
this._container.style.overflow = "hidden";
this._slider.style.position = "absolute";


如果没有设置Change切换参数属性,会自动根据滑动对象获取:

this.Change = this.options.Change ? this.options.Change :
    
this._slider[bVertical ? "offsetHeight" : "offsetWidth"/ this._count;


执行Run方法就会开始进入切换,其中有一个可选参数用来重新设置要切换的图片索引:

index == undefined && (index = this.Index);
index 
 0 && (index = this._count - 1|| index >= this._count && (index = 0);

之后就到设置使用tween缓动时需要的参数了,
包括_target(目标值)、_t(时间)、_b(初始值)和_c(变化量):

JavaScript 图片滑动切换效果JavaScript 图片滑动切换效果Code


还有Duration(持续时间)是自定义属性。

参数设置好后就执行Move程序开始移动了。
里面很简单,首先判断_c是否有值(等于0表示不需要移动)和_t是否到达Duration,
未满足条件就继续移动,否则直接移动到目标值并进行下一次切换:

JavaScript 图片滑动切换效果JavaScript 图片滑动切换效果Code

 

使用说明

实例化需要3个参数,分别是容器对象,滑动对象和切换数量,之后可以直接执行Run方法运行:

new SlideTrans("idContainer""idSlider"3).Run();


还有以下可选属性:
Vertical: true,//是否垂直方向(方向不能改)
Auto:  true,//是否自动
Change:  0,//改变量
Duration: 50,//滑动持续时间
Time:  10,//滑动延时
Pause:  2000,//停顿时间(Auto为true时有效)
onStart: function(){},//开始转换时执行
onFinish: function(){},//完成转换时执行
Tween:  Tween.Quart.easeOut//tween算子

其中Vertical初始化后就不能修改,Tween算子可参照这里的缓动效果选择(实例中选了其中3个)。

还有提供了以下方法:
Next: 切换下一个
Previous: 切换上一个
Stop: 停止自动切换
还有上面说到的Run

 

程序代码

JavaScript 图片滑动切换效果JavaScript 图片滑动切换效果Code

 


下载测试代码

其他图片展示效果:
JavaScript 图片变换效果(ie only)
JavaScript 图片滑动展示效果

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Das offizielle Einführungs-Tutorial von Huawei für die Programmiersprache Cangjie wird veröffentlicht. Erfahren Sie in einem Artikel, wie Sie die universelle Version des SDK erhalten Das offizielle Einführungs-Tutorial von Huawei für die Programmiersprache Cangjie wird veröffentlicht. Erfahren Sie in einem Artikel, wie Sie die universelle Version des SDK erhalten Jun 25, 2024 am 08:05 AM

Laut Nachrichten dieser Website vom 24. Juni kündigte Gong Ti, Präsident der Softwareabteilung von Huawei Terminal BG, bei der Grundsatzrede der Huawei-Entwicklerkonferenz HDC2024 am 21. Juni offiziell die von Huawei selbst entwickelte Programmiersprache Cangjie an. Diese Sprache wurde fünf Jahre lang entwickelt und steht jetzt als Entwicklervorschau zur Verfügung. Auf der offiziellen Entwickler-Website von Huawei wurde jetzt das offizielle Einführungsvideo zur Programmiersprache Cangjie veröffentlicht, um Entwicklern den Einstieg und das Verständnis zu erleichtern. Dieses Tutorial führt Benutzer dazu, Cangjie zu erleben, Cangjie zu lernen und Cangjie anzuwenden, einschließlich der Verwendung der Cangjie-Sprache zur Schätzung von Pi, der Berechnung der Stamm- und Zweigregeln für jeden Monat des Jahres 2024, der N Möglichkeiten, Binärbäume in der Cangjie-Sprache auszudrücken, und der Verwendung der Aufzählung Typen zur Implementierung algebraischer Berechnungen, Signalsystemsimulation mithilfe von Schnittstellen und Erweiterungen sowie neuer Syntax mithilfe von Cangjie-Makros usw. Diese Site hat die Tutorial-Zugriffsadresse: ht

Nach fünf Jahren Forschung und Entwicklung hat Huaweis Programmiersprache der nächsten Generation „Cangjie' offiziell seine Vorschau veröffentlicht Nach fünf Jahren Forschung und Entwicklung hat Huaweis Programmiersprache der nächsten Generation „Cangjie' offiziell seine Vorschau veröffentlicht Jun 22, 2024 am 09:54 AM

Diese Website berichtete am 21. Juni, dass Gong Ti, Präsident der Softwareabteilung von Huawei Terminal BG, heute Nachmittag auf der Huawei-Entwicklerkonferenz HDC2024 offiziell die von Huawei selbst entwickelte Cangjie-Programmiersprache angekündigt und eine Entwicklervorschauversion der Cangjie-Sprache HarmonyOSNEXT veröffentlicht hat. Dies ist das erste Mal, dass Huawei die Programmiersprache Cangjie öffentlich veröffentlicht. Gong Ti sagte: „Im Jahr 2019 wurde das Cangjie-Programmiersprachenprojekt bei Huawei geboren. Nach fünf Jahren voller Forschung und Entwicklung und hohen Investitionen in Forschung und Entwicklung trifft es heute endlich auf globale Entwickler. Die Cangjie-Programmiersprache integriert moderne Sprachfunktionen, umfassende Kompilierungsoptimierung und Laufzeitimplementierung.“ und die sofort einsatzbereite IDE-Toolkettenunterstützung sorgen für ein benutzerfreundliches Entwicklungserlebnis und eine hervorragende Programmleistung für Entwickler. „Berichten zufolge ist die Programmiersprache Cangjie ein All-Szenario-Intelligence-Tool.

Die Tianjin-Universität und die Beihang-Universität sind maßgeblich am „Cangjie'-Projekt von Huawei beteiligt und haben das erste KI-Agent-Programmier-Framework „Cangqiong' auf Basis inländischer Programmiersprachen auf den Markt gebracht. Die Tianjin-Universität und die Beihang-Universität sind maßgeblich am „Cangjie'-Projekt von Huawei beteiligt und haben das erste KI-Agent-Programmier-Framework „Cangqiong' auf Basis inländischer Programmiersprachen auf den Markt gebracht. Jun 23, 2024 am 08:37 AM

Laut Nachrichten dieser Website vom 22. Juni stellte Huawei gestern Entwicklern auf der ganzen Welt die von Huawei selbst entwickelte Programmiersprache Cangjie vor. Dies ist der erste öffentliche Auftritt der Programmiersprache Cangjie. Laut Anfragen auf dieser Website waren die Tianjin-Universität und die Pekinger Universität für Luft- und Raumfahrt stark an der Forschung und Entwicklung von Huaweis „Cangjie“ beteiligt. Tianjin-Universität: Cangjie-Programmiersprachen-Compiler Das Software-Engineering-Team der Abteilung für Intelligenz und Informatik der Tianjin-Universität hat sich mit dem Huawei Cangjie-Team zusammengetan, um sich intensiv an der Qualitätssicherungsforschung des Cangjie-Programmiersprachen-Compilers zu beteiligen. Berichten zufolge ist der Cangjie-Compiler die Basissoftware, die eine Symbiose mit der Programmiersprache Cangjie eingeht. In der Vorbereitungsphase der Cangjie-Programmiersprache wurde ein hochwertiger Compiler, der dazu passt, zu einem der Kernziele. Während sich die Programmiersprache Cangjie weiterentwickelt, wird der Cangjie-Compiler ständig aktualisiert und verbessert. In den letzten fünf Jahren an der Tianjin-Universität

Der Bildschirm eignet sich gut zum Spielen. Kurze Analyse des iQOO Neo9S Pro+-Bildschirms Der Bildschirm eignet sich gut zum Spielen. Kurze Analyse des iQOO Neo9S Pro+-Bildschirms Jul 19, 2024 pm 03:53 PM

Auf dem heutigen Smartphone-Markt ist die Bildschirmqualität zu einem der Schlüsselindikatoren zur Messung der Gesamtleistung eines Mobiltelefons geworden. Die Neo-Serie von iQOO ist seit jeher bestrebt, den Benutzern ein hervorragendes Spielerlebnis und visuellen Genuss zu bieten. Als nächstes werfen wir einen Blick auf die Qualität dieses Bildschirms. iQOO Neo9S Pro+ ist mit einem 1,5-KOLED-E-Sports-Direktbildschirm ausgestattet, der die adaptive Bildwiederholfrequenz des Flaggschiff-LTPO von 1 Hz bis 144 Hz unterstützt, was bedeutet, dass er bei der Anzeige statischer Inhalte einen Standby-Zustand mit extrem geringem Stromverbrauch erreichen kann und außerdem intelligent sein kann Wechseln Sie beim Spielen auf dynamisch hoch von 90 Hz auf 144 Hz

OPPO Find X7 ist ein Meisterwerk! Halten Sie jeden Moment mit Bildern fest OPPO Find X7 ist ein Meisterwerk! Halten Sie jeden Moment mit Bildern fest Aug 07, 2024 pm 07:19 PM

In dieser schnelllebigen Zeit kann OPPO Find X7 seine Bildleistung nutzen, um uns jeden schönen Moment im Leben genießen zu lassen. Egal, ob es sich um herrliche Berge, Flüsse, Seen oder Meere, herzliche Familientreffen oder Begegnungen und Überraschungen auf der Straße handelt, es kann Ihnen dabei helfen, diese in „beispielloser“ Bildqualität festzuhalten. Von außen sieht das Kamera-Deco-Design von Find It sehr erkennbar aus und wirkt hochwertig. Auch das Innere ist einzigartig, angefangen bei der grundlegenden Hardware-Ausstattung. FindX7 behält das Bisherige bei

Huawei: Die Programmiersprache Cangjie ist unabhängig steuerbar und entwickelt sich nicht auf der Grundlage einer vorhandenen Programmiersprache weiter Huawei: Die Programmiersprache Cangjie ist unabhängig steuerbar und entwickelt sich nicht auf der Grundlage einer vorhandenen Programmiersprache weiter Jun 22, 2024 pm 12:26 PM

Laut Nachrichten dieser Website vom 21. Juni wurde die von Huawei selbst entwickelte Cangjie-Programmiersprache heute offiziell vorgestellt und die Beta-Rekrutierung für die Vorschauversion der Cangjie-Sprachentwickler von HarmonyOSNEXT gestartet. Die Cangjie Programming Language-Seite mit Fragen und Antworten auf der offiziellen Website von Huawei zeigt, dass die Cangjie Programming Language eine auf All-Szenario-Intelligenz ausgerichtete Anwendungsprogrammiersprache ist. Sie konzentriert sich auf native Intelligenz, natürliche All-Szenarien, hohe Leistung und starke Sicherheit mit Hongmeng-System, um eine gute Programmiererfahrung zu bieten. Für verschiedene Geschäftsszenarien bietet Hongmeng Ecosystem Anwendungsentwicklern mehrsprachige Hybridentwicklungsfunktionen wie Cangjie und ArkTS. Cangjie und ArkTS entwickeln sich gemeinsam und bilden komplementäre Vorteile im Hongmeng-Ökosystem. Cangjie eignet sich besser für Geschäftsszenarien mit hohen Leistungs- und Parallelitätsanforderungen. Das Ziel der Programmiersprache Cangjie besteht darin, Hongmeng-Anwendungen zu erstellen, die Aufgaben gleichzeitig ausführen können.

Problemlösung mit Python: Erschließen Sie leistungsstarke Lösungen als Programmieranfänger Problemlösung mit Python: Erschließen Sie leistungsstarke Lösungen als Programmieranfänger Oct 11, 2024 pm 08:58 PM

Python unterstützt Anfänger bei der Problemlösung. Seine benutzerfreundliche Syntax, umfangreiche Bibliothek und Funktionen wie Variablen, bedingte Anweisungen und Schleifen ermöglichen eine effiziente Codeentwicklung. Von der Datenverwaltung über die Steuerung des Programmablaufs bis hin zur Ausführung wiederkehrender Aufgaben bietet Python

ChinaJoy2024 erscheint in einer anderen Welt: Evnias 49-Zoll-Riesenleinwand-Debüt ChinaJoy2024 erscheint in einer anderen Welt: Evnias 49-Zoll-Riesenleinwand-Debüt Jul 25, 2024 pm 12:46 PM

ChinaJoy2024 findet vom 26. bis 29. Juli im New International Expo Centre in Shanghai statt. Als offizielles Kooperationsmedium von ChinaJoy wird Zhongguancun Online an dieser jährlichen Veranstaltung mit mehr als 24 Mode-, Technologie- und Digitalmarken am Stand S101 der E7-Ausstellungshalle teilnehmen und eine Gesamtfläche von 795 Quadratmetern abdecken Vollständige Berichterstattung über Sehen, Hören und Fühlen – „Koordiniert in Shanghai! Es ist trendig und macht Spaß hier!“ Philips und seine Gaming-Monitor-Submarke Evnia werden dieses Mal auch an ChinaJoy2024 teilnehmen. Zusätzlich zu den von uns vorgestellten QDOLED-Gaming-Monitoren der EvniaO8-Serie und den MiniLED-Serien EvniaM6

See all articles