suchen
HeimWeb-Frontendjs-Tutorialjs-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen

Vorwort: Ich habe vor zwei Tagen im Internet nach Komponenten gesucht und zufällig die „SlotMachine-Komponente“ entdeckt, die wie eine Spielekonsole aus unserer Kindheit aussieht und beim Stöbern viele Erinnerungen an meine Kindheit wachgerufen hat.

Werfen wir nun einen Blick auf solch eine magische Komponenten-SlotMachine.

1. Komponentenvorschau

Schauen wir uns zunächst den einfachen Effekt zur Unterdrückung des Schocks an

Denken Sie, es ist zu einfach? Keine Sorge, der Spaß kommt später, versuchen Sie zuerst Ihr Glück.

Was? Wir haben den gewünschten Effekt noch nicht erreicht, okay! Schauen wir uns als Nächstes den tatsächlichen Effekt an.

Ich habe lange geklickt, aber ich habe immer noch nicht gewonnen. Kein Wunder, dass ich als Kind nicht gewinnen konnte. Wenn Sie nicht an das Böse glauben, klicken Sie weiter, um zu beginnen. Schließlich werden Sie im Lotto gewinnen. Es ist wirklich nicht einfach.

Und unsere Ergebnisse der Verlosung zum Jahresende, fangen wir an! stoppen!

2. Codebeispiele

Da es sich um eine js-Komponente handelt, müssen Sie zuerst die Komponentenbibliothek herunterladen. Fügen Sie zunächst die Open-Source-Adresse

ein

Dann schauen wir uns die Dateiverweise an:

Code kopieren Der Code lautet wie folgt:
https ://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" Integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"





Ein paar Dinge, die Sie hier beachten sollten:

1) Zitieren von JQuery und Bootstrap erfolgt über die CDN-Beschleunigung. Wenn Sie sich mit der CDN-Beschleunigung nicht auskennen, können Sie Baidu verwenden.
2) Die Jquery-Komponente ist erforderlich und die Komponente benötigt die Unterstützung von Jquery 2.0 oder höher. Wenn die Version zu niedrig ist, kommt es zu js-Ausnahmen.
3) Bootstrap-Komponenten sind nicht erforderlich, aber das Layout dieses Artikels erfordert eine gewisse Unterstützung des Bootstrap-Stils.
4) Die Toastr-Komponente ist nicht erforderlich, sie wird hier verwendet, um die Gewinnerergebnisse anzuzeigen.
1. Probieren Sie Ihren Glückseffektcode
aus HTML-Teil

<div id="triky">
 <div class="content" style="text-align: center">
  <h1 id="请选择你想吃的食物">请选择你想吃的食物</h1>

  <div class="row">
  <div style="margin: auto;">
   <div id="triky1">
   <div>
    <img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/cookie.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" >
   </div>
   <div>
    <img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/food1.jpg"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" >
   </div>
   <div>
    <img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/food2.jpg"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" >
   </div>
   <div>
    <img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/food3.jpg"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" >
   </div>
   </div>
   <div>
   <div class="btn-group btn-group-justified btn-group-triky" style="margin-left:-15px" role="group">
    <div id="trikyShuffle" type="button" class="btn btn-primary btn-lg">试试手气</div>
   </div>
   </div>
  </div>
  </div>
 </div>

 <div class="clearfix"></div>
 </div>

JS-Teil

$(function () {
  //试试手气
  var triky = $("#triky1").slotMachine({
  active: 2, //初始化的时候显示的项的索引
  //delay: 150,//切换两张图片的间隔时间(毫秒单位)
  //randomize: function () {
  // return 0;//每次旋转后选中值的索引(从0开始)
  //}
  });

  $("#trikyShuffle").click(function () {
  triky.shuffle(8);//开始旋转方法,参数8表示每次旋转跳过8个图标
  });
 });

JS常用属性、方法、事件详解

(1)初始化方法 var machine = $("#id").slotMachine({}); 返回当前旋转的对象。slotMachine()方法里面传递初始化的参数,比如

active:表示初始化的时候显示项的索引,从0开始
delay:切换两张图片的间隔时间(毫秒单位)
auto:是否自动旋转,取值为true or false
spins:当auto为true的时候,这是每次跳过图标的个数
stophidden:是否出现开始和停止时候的动画
randomize:function(activeElementIndex){}此属性表示每次旋转后选中值的索引(从0开始)
direction:动画的方向,取值(up||down)
(2)常用方法

 machine.shuffle( repeat, onStopCallback ); 表示开始旋转,repeat表示每次跳过的图片个数;onstopCallback表示旋转停止后的事件回调方法。
 machine.prev(); 返回前一个元素
 machine.next(); 返回后一个元素
 machine.stop(); 停止旋转
 machine.active; 得到选中的元素的索引
 machine.running; 检测是否正在旋转,true表示正在旋转
 machine.stopping; 检测是否已经停止
 machine.destroy(); 摧毁旋转节点
2、简单游戏机效果代码示例
html部分

<div id="randomize">
 <div class="content container" style="text-align: center;max-width: 900px;">
  <h1 id="简易游戏机">简易游戏机</h1>

  <div class="row">
  <div class="col-xs-4">
   <div>
   <div id="machine1" class="randomizeMachine">
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot1.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot2.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot3.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot4.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot5.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot6.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
   </div>
   </div>
  </div>

  <div class="col-xs-4">
   <div>
   <div id="machine2" class="randomizeMachine">
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot1.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot2.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot3.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot4.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot5.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot6.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
   </div>
   </div>
  </div>

  <div class="col-xs-4">
   <div>
   <div id="machine3" class="randomizeMachine">
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot1.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot2.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot3.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot4.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot5.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
    <div><img  src="/static/imghwm/default1.png"  data-src="/Content/jQuery-SlotMachine-master/img/slot6.png"  class="lazy" / alt="js-Komponente SlotMachine implementiert den Bildwechseleffekt, um Lotteriesystem_Javascript-Fähigkeiten zu erstellen" ></div>
   </div>
   </div>
  </div>
  </div>

  <div>
  <div class="btn-group btn-group-justified btn-group-randomize" role="group">
   <div id="ranomizeButton" type="button" class="btn btn-danger btn-lg">开始</div>
  </div>
  </div>
 </div>
 </div>

JS部分

$(function () {
  //简易游戏机
  var machine1 = $("#machine1").slotMachine({
  active: 0,
  delay: 500
  });

  var machine2 = $("#machine2").slotMachine({
  active: 1,
  delay: 500,
  direction: 'down'
  });

  var machine3 = $("#machine3").slotMachine({
  active: 2,
  delay: 500
  });

  var arr = [];
  function onComplete(active) {
  if (arr.length <= 1) {
   arr.push(active);
  }
  else if (arr.length > 1) {
   arr.push(active);
   if (arr[0] == arr[1] && arr[1] == arr[2]) {
   toastr.success("恭喜你中奖了!");
   }
   else if (arr[0] == arr[1] || arr[0] == arr[2] || arr[1] == arr[2]) {
   toastr.success("还差一点,继续加油");
   }
   else {
   toastr.success("手气不行");
   }
   arr = [];
  }
  }

  $("#ranomizeButton").click(function () {

  machine1.shuffle(5, onComplete);

  setTimeout(function () {
   machine2.shuffle(5, onComplete);
  }, 500);

  setTimeout(function () {
   machine3.shuffle(5, onComplete);
  }, 1000);

  })
 });

3、单个停止效果代码示例
Html部分

<div id="casino" style="padding-top:50px;">
 <div class="content">
  <h1 id="抽奖">抽奖</h1>

  <div>
  <div id="casino1" class="slotMachine" style="margin-left: -65px;">
   <div class="slot slot1"></div>
   <div class="slot slot2"></div>
   <div class="slot slot3"></div>
   <div class="slot slot4"></div>
   <div class="slot slot5"></div>
   <div class="slot slot6"></div>
  </div>

  <div id="casino2" class="slotMachine">
   <div class="slot slot1"></div>
   <div class="slot slot2"></div>
   <div class="slot slot3"></div>
   <div class="slot slot4"></div>
   <div class="slot slot5"></div>
   <div class="slot slot6"></div>
  </div>

  <div id="casino3" class="slotMachine">
   <div class="slot slot1"></div>
   <div class="slot slot2"></div>
   <div class="slot slot3"></div>
   <div class="slot slot4"></div>
   <div class="slot slot5"></div>
   <div class="slot slot6"></div>
  </div>

  <div class="btn-group btn-group-justified btn-group-casino" role="group">
   <div id="slotMachineButtonShuffle" type="button" class="btn btn-primary btn-lg">开始</div>
   <div id="slotMachineButtonStop" type="button" class="btn btn-primary btn-lg">停止</div>
  </div>
  </div>

 </div>
 <div class="clearfix"></div>
 </div>

JS部分

$(function () {
  //单个停止
  var machine4 = $("#casino1").slotMachine({
  active: 0,
  delay: 500
  });

  var machine5 = $("#casino2").slotMachine({
  active: 1,
  delay: 550
  });

  machine6 = $("#casino3").slotMachine({
  active: 2,
  delay: 600
  });

  var started = 0;

  $("#slotMachineButtonShuffle").click(function () {
  started = 3;
  machine4.shuffle();
  machine5.shuffle();
  machine6.shuffle();
  });

  $("#slotMachineButtonStop").click(function () {
  switch (started) {
   case 3:
   machine4.stop();
   break;
   case 2:
   machine5.stop();
   break;
   case 1:
   machine6.stop();
   break;
  }
  started--;
  });
 });

三、总结
整个过程并不复杂,所有的属性、事件、方法基本看看文档都能很好理解运用,演示代码也没什么好说的,一看就懂,希望对大家学习javascript组件有所帮助。

Stellungnahme
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
JavaScripts Rolle: das Web interaktiv und dynamisch machenJavaScripts Rolle: das Web interaktiv und dynamisch machenApr 24, 2025 am 12:12 AM

JavaScript ist das Herzstück moderner Websites, da es die Interaktivität und Dynamik von Webseiten verbessert. 1) Es ermöglicht die Änderung von Inhalten, ohne die Seite zu aktualisieren, 2) Webseiten durch DOMAPI zu manipulieren, 3) Komplexe interaktive Effekte wie Animation und Drag & Drop, 4) die Leistung und Best Practices optimieren, um die Benutzererfahrung zu verbessern.

C und JavaScript: Die Verbindung erklärteC und JavaScript: Die Verbindung erklärteApr 23, 2025 am 12:07 AM

C und JavaScript erreichen die Interoperabilität durch WebAssembly. 1) C -Code wird in das WebAssembly -Modul zusammengestellt und in die JavaScript -Umgebung eingeführt, um die Rechenleistung zu verbessern. 2) In der Spieleentwicklung kümmert sich C über Physik -Engines und Grafikwiedergabe, und JavaScript ist für die Spiellogik und die Benutzeroberfläche verantwortlich.

Von Websites zu Apps: Die verschiedenen Anwendungen von JavaScriptVon Websites zu Apps: Die verschiedenen Anwendungen von JavaScriptApr 22, 2025 am 12:02 AM

JavaScript wird in Websites, mobilen Anwendungen, Desktop-Anwendungen und serverseitigen Programmierungen häufig verwendet. 1) In der Website -Entwicklung betreibt JavaScript DOM zusammen mit HTML und CSS, um dynamische Effekte zu erzielen und Frameworks wie JQuery und React zu unterstützen. 2) Durch reaktnatives und ionisches JavaScript wird ein plattformübergreifendes mobile Anwendungen entwickelt. 3) Mit dem Elektronenframework können JavaScript Desktop -Anwendungen erstellen. 4) Node.js ermöglicht es JavaScript, auf der Serverseite auszuführen und unterstützt hohe gleichzeitige Anforderungen.

Python gegen JavaScript: Anwendungsfälle und Anwendungen verglichenPython gegen JavaScript: Anwendungsfälle und Anwendungen verglichenApr 21, 2025 am 12:01 AM

Python eignet sich besser für Datenwissenschaft und Automatisierung, während JavaScript besser für die Entwicklung von Front-End- und Vollstapel geeignet ist. 1. Python funktioniert in Datenwissenschaft und maschinellem Lernen gut und unter Verwendung von Bibliotheken wie Numpy und Pandas für die Datenverarbeitung und -modellierung. 2. Python ist prägnant und effizient in der Automatisierung und Skripten. 3. JavaScript ist in der Front-End-Entwicklung unverzichtbar und wird verwendet, um dynamische Webseiten und einseitige Anwendungen zu erstellen. 4. JavaScript spielt eine Rolle bei der Back-End-Entwicklung durch Node.js und unterstützt die Entwicklung der Vollstapel.

Die Rolle von C/C bei JavaScript -Dolmetschern und CompilernDie Rolle von C/C bei JavaScript -Dolmetschern und CompilernApr 20, 2025 am 12:01 AM

C und C spielen eine wichtige Rolle in der JavaScript -Engine, die hauptsächlich zur Implementierung von Dolmetschern und JIT -Compilern verwendet wird. 1) C wird verwendet, um JavaScript -Quellcode zu analysieren und einen abstrakten Syntaxbaum zu generieren. 2) C ist für die Generierung und Ausführung von Bytecode verantwortlich. 3) C implementiert den JIT-Compiler, optimiert und kompiliert Hot-Spot-Code zur Laufzeit und verbessert die Ausführungseffizienz von JavaScript erheblich.

JavaScript in Aktion: Beispiele und Projekte in realer WeltJavaScript in Aktion: Beispiele und Projekte in realer WeltApr 19, 2025 am 12:13 AM

Die Anwendung von JavaScript in der realen Welt umfasst Front-End- und Back-End-Entwicklung. 1) Zeigen Sie Front-End-Anwendungen an, indem Sie eine TODO-Listanwendung erstellen, die DOM-Operationen und Ereignisverarbeitung umfasst. 2) Erstellen Sie RESTFUFFUPI über Node.js und express, um Back-End-Anwendungen zu demonstrieren.

JavaScript und das Web: Kernfunktionalität und AnwendungsfälleJavaScript und das Web: Kernfunktionalität und AnwendungsfälleApr 18, 2025 am 12:19 AM

Zu den Hauptanwendungen von JavaScript in der Webentwicklung gehören die Interaktion der Clients, die Formüberprüfung und die asynchrone Kommunikation. 1) Dynamisches Inhaltsaktualisierung und Benutzerinteraktion durch DOM -Operationen; 2) Die Kundenüberprüfung erfolgt vor dem Einreichung von Daten, um die Benutzererfahrung zu verbessern. 3) Die Aktualisierung der Kommunikation mit dem Server wird durch AJAX -Technologie erreicht.

Verständnis der JavaScript -Engine: ImplementierungsdetailsVerständnis der JavaScript -Engine: ImplementierungsdetailsApr 17, 2025 am 12:05 AM

Es ist für Entwickler wichtig, zu verstehen, wie die JavaScript -Engine intern funktioniert, da sie effizientere Code schreibt und Leistungs Engpässe und Optimierungsstrategien verstehen kann. 1) Der Workflow der Engine umfasst drei Phasen: Parsen, Kompilieren und Ausführung; 2) Während des Ausführungsprozesses führt die Engine dynamische Optimierung durch, wie z. B. Inline -Cache und versteckte Klassen. 3) Zu Best Practices gehören die Vermeidung globaler Variablen, die Optimierung von Schleifen, die Verwendung von const und lass und die Vermeidung übermäßiger Verwendung von Schließungen.

See all articles

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

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),