javascript动画对象支持加速、减速、缓入、缓出的实现代码_javascript技巧
调用接口:
/**
* @param elem {HTMLElement} 执行动画的HTML元素
* @param params {JSON} 动画执行过过程中需要修改的HTML属性
* @param duration {Number} 可选,动画执行时间,单位毫秒
* @param easing {String} 可选,动画执行的方式,缓入easeIn、缓出easeOut
* @param callback {Function} 可选,动画执行完成时的回调函数
* @return
*/
effect.animate(elem, params, duration, easing, callback);
使用它用不了20行代码就可以做一个产品图片减速淡出、加速淡入的切换效果点击这里查看演示效果
//辅助对象,读/写DOM元素属性
var attribute = {
get: function(elem, attr){
var val;
if(elem.currentStyle){
if(attr === "opacity") {
val = elem.filters.alpha[attr];
}else {
val = elem.currentStyle[attr];
}
}
else{
val = getComputedStyle(elem)[attr];
if(attr === "opacity") {
val = 100 * val;
}
}
return val;
},
set: function(elem, attr, val){
if(attr=='opacity'){
elem.style.filter = 'alpha(opacity='+ (val) +')';
elem.style.opacity = (val)/100;
}
else{
elem.style[attr] = val + 'px';
}
}
};
/*
* 描述: tween动画算法。
* @param Number t: 动画已经执行的时间(实际上时执行多少次/帧数)
* @param Number b: 起始位置
* @param Number c: 终止位置
* @param Number d: 从起始位置到终止位置的经过时间(实际上时执行多少次/帧数)
*/
var tween = {
//缓入
easeIn: function (t, b, c, d){
return c * (t/=d) * t + b;
},
//缓出
easeOut: function (t,b,c,d){
return -c * (t/=d) * (t-2) + b;
}
};
//动画对象
var effect = {
animate: function(elem, params, duration, easing, callback){
var dt = new Date().getTime(),
b = 0,
c = 0,
d = duration || 500,
fps = 1000/60;
var changes = [];
for(var attr in params){
b = parseFloat(attribute.get(elem, attr));
c = params[attr] - b;
changes.push({
attr: attr,
b: b,
c: c
});
}
easing = easing || "easeOut";
callback = callback || new Function;
setTimeout(function(){
var t = new Date().getTime() - dt;
var b, c, attr;
for(var i=0; i
c = changes[i].c;
attr = changes[i].attr;
attribute.set(elem, attr, tween[easing](t, b, c, d));
if(d attribute.set(elem, attr, params[attr]);
callback();
return;
}
}
setTimeout(arguments.callee, fps);
}, fps);
}
};
//by rentj1@163.com

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Laravel-Caching-Mechanismus: Beschleunigen Sie die Reaktionszeit von Anwendungen. Einführung: Im heutigen Internetzeitalter ist eine schnelle Reaktionszeit von Anwendungen entscheidend für die Benutzererfahrung und den Geschäftserfolg. Um die Leistung und Reaktionsfähigkeit der Anwendung zu verbessern, müssen Entwickler einige Strategien anwenden. Eine davon ist die Verwendung eines Caching-Mechanismus. Als beliebtes PHP-Framework bietet Laravel einen leistungsstarken Caching-Mechanismus, der uns helfen kann, die Reaktionszeit unserer Anwendungen zu beschleunigen. In diesem Artikel wird die Verwendung des Laravel-Caching-Mechanismus ausführlich vorgestellt

So verwenden Sie Caching in FastAPI, um Antworten zu beschleunigen. Einführung: In der modernen Webentwicklung ist die Leistung ein wichtiges Anliegen. Wenn unsere Anwendung nicht schnell auf Kundenanfragen reagieren kann, kann dies zu einer Verschlechterung der Benutzererfahrung oder sogar zu einer Benutzerabwanderung führen. Die Verwendung von Cache ist eine der gängigen Methoden zur Verbesserung der Leistung von Webanwendungen. In diesem Artikel untersuchen wir, wie Caching verwendet werden kann, um die Reaktionsgeschwindigkeit des FastAPI-Frameworks zu beschleunigen, und stellen entsprechende Codebeispiele bereit. 1. Was ist Cache? Ein Cache ist ein Cache, auf den häufig zugegriffen wird

So verwenden Sie Numba, um numerische Berechnungen von Python-Programmen zu beschleunigen Einführung: Python ist eine sehr flexible und einfach zu verwendende Sprache, wenn es um numerische Berechnungen geht. Da Python jedoch eine interpretierte Sprache ist, läuft es relativ langsam, insbesondere bei intensiven numerischen Rechenaufgaben. Um die Leistung von Python-Programmen zu verbessern, können wir einige Optimierungstools und Bibliotheken verwenden. Eine sehr leistungsstarke Bibliothek ist Numba, die eine Just-in-Time-Kompilierung verwenden kann, ohne die Struktur des Python-Codes zu ändern.

Viele Freunde, die Computer mit Win7-System verwenden, stellen fest, dass die Internetgeschwindigkeit bei Verwendung des Computers extrem langsam ist. Was passiert? Es kann sein, dass es in Ihren Netzwerkeinstellungen bestimmte Einschränkungen gibt. Heute werde ich Ihnen beibringen, wie Sie Netzwerkbeschränkungen entfernen und die Netzwerkgeschwindigkeit extrem schnell machen können / 40MHzauto“ ist ausreichend. Werfen wir einen Blick auf die spezifischen Tutorials. Methoden zur Verbesserung der Netzwerkgeschwindigkeit von Win7-Computern 1. Der Editor verwendet zur Veranschaulichung das Win7-System. Klicken Sie mit der rechten Maustaste auf das Symbol „Netzwerk“ auf der rechten Seite der Desktop-Taskleiste und wählen Sie „Netzwerk- und Freigabecenter“, um es zu öffnen . 2. Klicken Sie in der neu angezeigten Benutzeroberfläche auf „Adaptereinstellungen ändern“, klicken Sie dann mit der rechten Maustaste auf „LAN-Verbindung“ und wählen Sie zum Öffnen „Eigenschaften“. 3. Im geöffneten Fenster „Lokal

So aktivieren Sie die Hardwarebeschleunigung Mit der Entwicklung der Technologie ist die Hardwarebeschleunigung zu einem wichtigen Mittel zur Verbesserung der Computerleistung geworden. Durch die Verwendung der Hardwarebeschleunigung können wir die Laufgeschwindigkeit des Computers beschleunigen, die Grafikverarbeitungsfähigkeiten verbessern und den Computer effizienter und stabiler machen. Wie kann man also die Hardwarebeschleunigung aktivieren? In diesem Artikel wird es Ihnen ausführlich vorgestellt. Zunächst müssen wir das Konzept der Hardwarebeschleunigung klären. Unter Hardwarebeschleunigung versteht man im Allgemeinen die Verwendung dedizierter Computerhardware zur Beschleunigungsverarbeitung und nicht die Verwendung von Software. Die übliche Hardwarebeschleunigung umfasst GPU (Grafikprozessor) plus

Wie konfiguriere ich den Nginx-Proxyserver, um die Antwortzeit von Webdiensten zu beschleunigen? Einleitung: Im heutigen Internetzeitalter sind schnelle und reaktionsfähige Webdienste für das Benutzererlebnis von entscheidender Bedeutung. Als leistungsstarker, leichter Reverse-Proxy-Server kann Nginx die Reaktionsgeschwindigkeit von Webdiensten effektiv verbessern. In diesem Artikel wird erläutert, wie Sie den Nginx-Proxyserver konfigurieren, um die Antwortzeit von Webdiensten zu beschleunigen, und detaillierte Anweisungen mit Codebeispielen bereitstellen. Teil eins: Installieren und Konfigurieren des Nginx-Proxyservers. Installieren Sie zuerst Nginx

So konfigurieren und verwenden Sie CDN zur Beschleunigung in Vue. Im Vue-Projekt kann die Verwendung von CDN (ContentDeliveryNetwork) das Laden von Webseiten effektiv beschleunigen und die Benutzererfahrung verbessern. Die CDN-Technologie verteilt statische Ressourcendateien an Server an verschiedenen Standorten auf der ganzen Welt, sodass Benutzer schnell Ressourcen von dem Server abrufen können, der dem Benutzer am nächsten liegt, wodurch Datenübertragungszeiten und Verzögerungen reduziert werden. Im Folgenden wird detailliert beschrieben, wie Sie CDN für die Beschleunigung in Vue konfigurieren und verwenden. Zuerst müssen wir einen finden

Die Geheimwaffe zur Beschleunigung der PHP-Anwendungsbereitstellung: Die schnelle und effiziente Bereitstellung von Anwendungen war schon immer eine der wichtigen Aufgaben des Softwareentwicklungsteams. Bei der PHP-Entwicklung umfasst die Bereitstellung einer Anwendung normalerweise mehrere Schritte wie das Hochladen von Dateien, das Aktualisieren von Code und das Konfigurieren der Umgebung. Um diesen Prozess zu vereinfachen und zu beschleunigen, werden nach und nach moderne Entwicklungstools und -technologien eingeführt. Eine der weithin anerkannten Geheimwaffen ist Deployer. Deployer ist eine PHP-Bibliothek für die automatisierte Anwendungsbereitstellung
