


WAP-Handy-Bild-Slide-Switching-Spezialeffekte ohne CSS3-Elemente, JS-Skript-Writing_Javascript-Fähigkeiten
Sliding Switching von Mobiltelefonbildern gibt es im Internet viele, aber sie basieren alle auf anderen Komponenten, was den Code verwirrend macht. Es gibt auch die Verwendung von transform in CSS3: translator (x, y); Um Elemente zu verschieben, stellte ich fest, dass es auf Geräten, die CSS3 nicht unterstützten, sofort vorbei war. Das wichtigste Problem war das Hinzufügen von Links zu Bildern Die Webseite konnte beim Ziehen der Bilder nicht gescrollt werden und ist nicht mit dem Ziehen auf PC-Geräten kompatibel. Ich werde hier kurz die aufgetretenen Probleme und Lösungen vorstellen
Problem 1: Nach dem Hinzufügen eines Links zu einem Bild springt es beim Ziehen immer zu anderen Seiten;Die Hauptursache des Problems besteht darin, dass nicht beurteilt werden kann, ob es sich um ein Klicken oder Ziehen handelt. Die allgemeine Reihenfolge von Mobiltelefonereignissen ist „Touchstart-》Mousedown-》Mousemove-》Touchmove-》Mouseup-》Touchend-》Klick. Dies kann je nach Mobiltelefon unterschiedlich sein. Ereignisse auf Touchscreen-Mobiltelefonen verwenden im Allgemeinen „Touchstart“ -> „Touchmove“ -> „Touchend“ -> „Click“-Ereignisse werden zuletzt ausgeführt, wenn wir „Touchstart“, „TouchMove“ und „TouchEnd“ verarbeitet haben wird ausgelöst, sodass die Webseite wegspringt. Die Lösung besteht darin, den Koordinatenpunkt von touchstart und den Koordinatenpunkt von touchmove aufzuzeichnen und anhand der beiden Koordinatenpunkte zu berechnen, ob sich der Berührungspunkt bewegt hat Der Ereignisparameter des Touchscreens ist im Allgemeinen Ereignisberührungen, event.targetTouches, event.changedTouches. Während des Tests habe ich festgestellt, dass die Werte der drei Parameter gleich sind. Es ist jedoch zu beachten, dass das Touchend-Ereignis die Berührungspunktkoordinaten nicht erhält (möglicherweise wird Touchmove weiterhin gestartet). Beim Verschieben wird touchmove manchmal nicht ausgelöst, was bedeutet, dass der Browser über eine integrierte Funktion verfügt, um den Berührungspunkt (oder die Maus) vom ausgewählten Element zu lösen. Wenn Sie beispielsweise lange gedrückt halten, wird ein Menü angezeigt erscheinen (das Bild auf dem PC generiert ein Miniaturbild, das gezogen werden kann), so dass beim Berühren von Start (Mousedown) event.preventDefault(); verwendet werden muss.
Problem 2: Die Auf- und Ab-Bildlaufleisten auf der Webseite können beim Ziehen des Bildes nicht scrollen;
Ich glaube, dass dieses Problem bestehen bleibt, solange Sie es schaffen. Tatsächlich liegt es hauptsächlich daran, dass das Standardereignis event.preventDefault() beim Verschieben (Touchmove, Mousemove) abgebrochen wird ob bewegt werden soll, um den Berührungspunkt zu erhalten, und ob die Startkontaktpunkte konsistent sind. Wenn sie konsistent sind, kehren Sie direkt zurück und berechnen Sie auch, ob sich die x-Achse mehr oder die y-Achse mehr bewegt, damit wir die Standardeinstellung aufheben können beim Schieben nach links und rechts und nicht abbrechen, wenn man zur Schule geht;Problem 3: Und es ist nicht mit dem Ziehen auf PC-Maschinen kompatibel
Dies liegt daran, dass Sie beim Binden des Ereignisses nicht vollständig berücksichtigen können, ob der Ereignisname „Touchstart“ oder „Mousedown“ lautet. Ich habe im Internet gesucht und festgestellt, dass dies nicht der Fall ist, also habe ich ihn direkt kopiert
this.eventName={ touchstart:'touchstart', touchmove:'touchmove', touchend:'touchend', }
if(!device){ this.eventName.touchstart='mousedown'; this.eventName.touchmove='mousemove'; this.eventName.touchend='mouseup'; }
Keine weiteren Worte, ich habe nur den Code gepostet. Wenn es etwas gibt, das nicht gut ist, fügen Sie es bitte ein und machen Sie einen Kommentar
<!doctype html> <html> <head> <meta charset="utf-8"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" /> <meta content="yes" name="apple-mobile-web-app-capable" /> <meta content="black" name="apple-mobile-web-app-status-bar-style" /> <meta content="telephone=no" name="format-detection" /> <title></title> <style type="text/css"> html,body,*{ margin: 0; padding: 0; border: 0;} #wapListImage1, #wapListImage{width: 100%; overflow: hidden; height: auto; cursor: move; zoom:1; position: relative;} #wapListImage1 ul, #wapListImage1 ul li, #wapListImage1 ul, #wapListImage ul li{ list-style: none;} #wapListImage1 ul, #wapListImage ul{width: 99999px;} #wapListImage1 ul li, #wapListImage ul li{ float: left;} #wapListImage ul li a img:focus, #wapListImage ul li a img:checked, #wapListImage ul li a img, #wapListImage ul li a img:active, #wapListImage ul li a,#wapListImage ul li a:active{cursor: move;} #wapListImage dl{ position: absolute; bottom: 10px; right: 0;} #wapListImage dl span{overflow: hidden;width: 10px; height: 10px; background-color: #900; display: inline-block;} #wapListImage dl span.selected{ background-color: #000;} </style> </head> <body> <div id="k"> <div id="wapListImage"> <ul> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd" target="_black"><img src="http://file25.mafengwo.net/M00/37/74/wKgB4lM9Hb-ARjpJAAOsX46Kq9w39.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/F2/06/wKgB4lNaHHCASXmDAAFtZsUxuwQ66.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/2B/EE/wKgB4lNwdpeAbvZiAAWcFRXe2Po83.gonglve.w690.jpeg"></a></li> <!-- <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd" target="_black"><img src="http://file25.mafengwo.net/M00/37/74/wKgB4lM9Hb-ARjpJAAOsX46Kq9w39.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/F2/06/wKgB4lNaHHCASXmDAAFtZsUxuwQ66.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/2B/EE/wKgB4lNwdpeAbvZiAAWcFRXe2Po83.gonglve.w690.jpeg"></a></li> --> </ul> <dl> <span class="selected">1</span> <span>2</span> <span>3</span> <!-- <span>4</span> <span>5</span> <span>6</span> --> </dl> </div> </div> <div style="height:200px;"></div> <div id="wapListImage1"> <ul> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd" target="_black"><img src="http://file25.mafengwo.net/M00/37/74/wKgB4lM9Hb-ARjpJAAOsX46Kq9w39.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/F2/06/wKgB4lNaHHCASXmDAAFtZsUxuwQ66.gonglve.w690.jpeg"></a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" hrefto="ddd"><img src="http://file25.mafengwo.net/M00/2B/EE/wKgB4lNwdpeAbvZiAAWcFRXe2Po83.gonglve.w690.jpeg"></a></li> </ul> </div> <script type="text/javascript"> ;(function(w,d){ var device = (/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase())); function WapImage(){ this.options={ dom: null, speed:200, isupdate:true, time:3000, leftOrright:'left', isfor:false, callBack:function(){} }, this.eventName={ touchstart:'touchstart', touchmove:'touchmove', touchend:'touchend', }, this.point={ x:5, y:5, pageX1:0, pageX2:0, pageY1:0, pageY2:0 }, this.page={ bodyWidth:320, domUL:null, liList:null, index: 0, flag:false, sTime:0, eTime:0, isDown:false, mleft:0, back:30, moveId:[], nextId:null, prevId:null, isdom:false }, this.Event={ handleEvent: function(event,lib){ event = event ? event : window.event; // console.log(event.type) switch(event.type){ case "touchstart": var touch = event.touches[0]; case "mousedown": if(lib.page.isDown) return; lib.page.isDown=true; lib.page.sTime=lib.page.eTime=new Date().getTime(); lib.Event.stop(lib,lib); if(event.type=="mousedown"){ touch = event; event.preventDefault(); } lib.point.pageX1 = lib.point.pageX2 = touch.pageX; lib.point.pageY1 = lib.point.pageY2 = touch.pageY; lib.page.mleft = parseFloat(lib.page.domUL.style.marginLeft); lib.page.mleft = lib.page.mleft ? lib.page.mleft : 0; break; case "touchmove": var touch = event.touches[0]; case "mousemove": if(!lib.page.isDown) return; if(event.type=="mousemove"){ touch = event; } lib.point.pageX2 = touch.pageX; lib.point.pageY2 = touch.pageY; if(lib.point.pageX1==lib.point.pageX2){ event.preventDefault(); return false; } var changeX = lib.point.pageX1 - lib.point.pageX2; var changeY = lib.point.pageY1 - lib.point.pageY2; if(Math.abs(changeX)>Math.abs(changeY)) {//左右事件 event.preventDefault(); lib.page.domUL.style.marginLeft=lib.page.mleft-changeX+'px'; if(parseFloat(lib.page.domUL.style.marginLeft)<= -(lib.page.liList.length-1)*lib.page.bodyWidth){ lib.page.domUL.style.marginLeft= -(lib.page.liList.length-1)*lib.page.bodyWidth+'px'; lib.page.mleft=-(lib.page.liList.length-1)*lib.page.bodyWidth; } if(parseFloat(lib.page.domUL.style.marginLeft)>0){ lib.page.domUL.style.marginLeft='0px'; lib.page.mleft=0; } }else if(Math.abs(changeY)>Math.abs(changeX)){//上下事件 }else{//长按或点击 } break; case "mouseup": case "touchend": if(!lib.page.isDown) return; lib.page.eTime=new Date().getTime(); lib.page.mleft = parseFloat(lib.page.domUL.style.marginLeft); lib.page.mleft = lib.page.mleft ? lib.page.mleft : 0; var changeX = lib.point.pageX1 - lib.point.pageX2; var changeY = lib.point.pageY1 - lib.point.pageY2; if(Math.abs(changeX)>Math.abs(changeY)) {//左右事件 event.preventDefault(); lib.Event.move.call(this,lib); }else if(Math.abs(changeY)>Math.abs(changeX)){//上下事件 lib.Event.move.call(this,lib); }else{//长按或点击 if((lib.page.eTime - lib.page.sTime) > 300) {//长按 }else{//点击 if(event.button==0 || event.type=='touchend'){ var a = lib.page.liList[lib.page.index].getElementsByTagName('a')[0]; if(typeof a.getAttribute('target')=='object'){ w.location=a.getAttribute('hrefto') }else{ w.open(a.getAttribute('hrefto')); } } } } lib.page.isDown=false; break; default: break; } }, position: function(lib,index){ // if(index==undefined){ // lib.page.domUL.style.marginLeft= -(lib.page.index*lib.page.bodyWidth) +'px'; // }else{ // lib.page.domUL.style.marginLeft= -(index*lib.page.bodyWidth) +'px'; // lib.page.index=index; // } if(!lib.options.isfor){ if(index==undefined){ lib.page.domUL.style.marginLeft= -(lib.page.index*lib.page.bodyWidth) +'px'; }else{ lib.page.domUL.style.marginLeft= -((index-1)*lib.page.bodyWidth) +'px'; lib.page.index=index-1; } lib.options.callBack({"index":parseInt(lib.page.liList[lib.page.index].getAttribute('index'))+1}); }else{ if(index==undefined){ lib.page.domUL.style.marginLeft= -lib.page.bodyWidth +'px'; }else{ lib.page.domUL.style.marginLeft= -lib.page.bodyWidth +'px'; while(true){ if(parseInt(index)==parseInt(lib.page.liList[1].getAttribute('index'))+1){ break; } lib.page.domUL.insertBefore(lib.page.liList[lib.page.liList.length-1],lib.page.liList[0]); } } lib.options.callBack({"index":parseInt(lib.page.liList[1].getAttribute('index'))+1}); } }, stop:function(lib){ for(var i =0;i<lib.page.moveId.length;i++){ clearInterval(lib.page.moveId[i]); } lib.page.moveId=[]; }, start:function(lib){ if(lib.options.isupdate){ lib.page.moveId[lib.page.moveId.length] = setInterval(function(){ if(lib.options.leftOrright=='left'){ lib.Event.next(lib,lib); }else{ lib.Event.prev(lib,lib); } },lib.options.time); } }, next:function(lib){ // console.log(lib.page.prevId.length+"nextId") // for (var n=0;n<lib.page.prevId.length;n++) { // // clearInterval(lib.page.prevId[n]); // }; // lib.page.prevId=[]; clearInterval(lib.page.prevId); lib.page.prevId=null; // var left = (lib.page.bodyWidth-Math.abs(lib.point.pageX1-lib.point.pageX2))/lib.options.speed; var yu = Math.abs(parseInt(lib.page.domUL.style.marginLeft)); while(true){ if(yu==0){ yu=lib.page.bodyWidth; break; }else if(yu<0){ yu= Math.abs(yu); break; } yu=yu-lib.page.bodyWidth } // var left = (lib.page.bodyWidth-Math.abs(parseFloat(lib.page.domUL.style.marginLeft)%lib.page.bodyWidth))/lib.options.speed; var left = yu/lib.options.speed; var c = 0; if(lib.page.index==lib.page.liList.length-1){ lib.page.flag=false; return; } clearInterval(lib.page.nextId); lib.page.nextId = window.setInterval(function(){ // lib.Event.stop(lib,lib); // if(lib.page.moveId==null){ // clearInterval(id); // } c=c+5; lib.page.domUL.style.marginLeft= (parseFloat(lib.page.domUL.style.marginLeft)-left*5)+'px'; // console.log("next"+lib.page.domUL.style.marginLeft); if(c>=lib.options.speed || parseFloat(lib.page.domUL.style.marginLeft)<= -(lib.page.liList.length-1)*lib.page.bodyWidth ){ if(parseFloat(lib.page.domUL.style.marginLeft)<= -(lib.page.liList.length-1)*lib.page.bodyWidth){ lib.page.domUL.style.marginLeft= -(lib.page.liList.length-1)*lib.page.bodyWidth+'px'; } clearInterval(lib.page.nextId); // for(var n=0;n=lib.page.nextId.length;n++){ // clearInterval(lib.page.nextId[0]); // } // lib.page.nextId=[]; lib.page.index++; lib.page.flag=false; lib.Event.domUpdate.call(this,lib,'r'); if(lib.page.moveId.length==0){ lib.Event.start(lib,lib); } } },5); }, prev:function(lib){ // console.log(lib.page.nextId.length+"nextId") // for(var n=0;n=lib.page.nextId.length;n++){ // // clearInterval(lib.page.nextId[0]); // } clearInterval(lib.page.nextId); lib.page.nextId=null; // lib.page.nextId=[]; // var left = (lib.page.bodyWidth-Math.abs(lib.point.pageX1-lib.point.pageX2))/lib.options.speed; // var left = (lib.page.bodyWidth-Math.abs(parseFloat(lib.page.domUL.style.marginLeft)%lib.page.bodyWidth))/lib.options.speed; var yu = Math.abs(parseInt(lib.page.domUL.style.marginLeft)); // console.log(yu+"----"+lib.page.domUL.style.marginLeft) while(true){ if(yu==0){ yu=lib.page.bodyWidth; break; }else if(yu<0){ yu= lib.page.bodyWidth-Math.abs(yu); break; } yu=yu-lib.page.bodyWidth } // var left = (lib.page.bodyWidth-yu)/lib.options.speed; var left = yu/lib.options.speed; var c = 0,id; if(lib.page.index==0){ lib.page.flag=false; return; } var ml = parseFloat(lib.page.domUL.style.marginLeft); clearInterval(lib.page.prevId); lib.page.prevId = window.setInterval(function(){ c=c+5; lib.page.domUL.style.marginLeft= (parseFloat(lib.page.domUL.style.marginLeft)+left*5)+'px'; // console.log(lib.page.domUL.style.marginLeft); if(c>=lib.options.speed || parseFloat(lib.page.domUL.style.marginLeft)>=0){ if(parseFloat(lib.page.domUL.style.marginLeft)>=0){ lib.page.domUL.style.marginLeft='0px'; } clearInterval(lib.page.prevId); // for (var n=0;n<lib.page.prevId.length;n++) { // clearInterval(lib.page.prevId[n]); // }; // lib.page.prevId=[]; lib.page.index--; lib.page.flag=false; lib.Event.domUpdate.call(this,lib,'l'); if(lib.page.moveId.length==0){ lib.Event.start(lib,lib); } } },5); }, move:function(lib){ if(lib.page.flag) return; lib.page.flag=true; if(Math.abs(lib.point.pageX1-lib.point.pageX2)<lib.page.back){ var h = Math.abs(Math.abs(parseFloat(lib.page.domUL.style.marginLeft))-Math.abs(lib.page.bodyWidth*lib.page.index)) h = h/70; var hi = 0; var hid; hid = window.setInterval(function(){ if(lib.point.pageX2>lib.point.pageX1){ lib.page.domUL.style.marginLeft = (parseFloat(lib.page.domUL.style.marginLeft) - h*5) +'px'; }else{ lib.page.domUL.style.marginLeft = (parseFloat(lib.page.domUL.style.marginLeft) + h*5) + 'px'; } hi=hi+5; if(hi>=70){ clearInterval(hid); lib.page.domUL.style.marginLeft= -(lib.page.index*lib.page.bodyWidth) +'px'; lib.page.flag=false; } },5); return; } if(lib.point.pageX1-lib.point.pageX2>0){ lib.Event.next.call(this,lib); }else if(lib.point.pageX2-lib.point.pageX1>0){ // console.log("===") lib.Event.prev.call(this,lib); } }, domUpdate: function(lib,type){ if(lib.page.isdom) return; lib.page.isdom=true; if(!lib.options.isfor){ var index = lib.page.liList[lib.page.index].getAttribute('index'); lib.options.callBack({"index":parseInt(index)+1}); lib.page.isdom=false; return; } if(type=='l'){ lib.page.domUL.insertBefore(lib.page.liList[lib.page.liList.length-1],lib.page.liList[0]); lib.page.domUL.style.marginLeft=-lib.page.bodyWidth+'px';//(parseFloat(lib.page.domUL.style.marginLeft)-lib.page.bodyWidth)+'px'; //lib.page.index++; }else if(type=='r'){ lib.page.domUL.appendChild(lib.page.liList[0]); lib.page.domUL.style.marginLeft=-lib.page.bodyWidth+'px';//(parseFloat(lib.page.domUL.style.marginLeft)+lib.page.bodyWidth)+'px'; //lib.page.index--; } lib.page.index=1; // console.log(lib.page.index) var index = lib.page.liList[lib.page.index].getAttribute('index'); lib.options.callBack({"index":parseInt(index)+1}); lib.page.isdom=false; } }; }; WapImage.prototype = { setoption: function(arg){ for(var i in this.options){ this.options[i]= arg[i] !== undefined ? arg[i] : this.options[i]; } if(!device){ this.eventName.touchstart='mousedown'; this.eventName.touchmove='mousemove'; this.eventName.touchend='mouseup'; } //return temp; }, bindEvent: function(){ var lib = this; this.page.domUL.addEventListener(this.eventName.touchstart,function(event){lib.Event.handleEvent.call(lib,event,lib);},false); w.addEventListener(this.eventName.touchmove,function(event){lib.Event.handleEvent.call(lib,event,lib);},false); w.addEventListener(this.eventName.touchend,function(event){lib.Event.handleEvent.call(lib,event,lib);},false); w.addEventListener('resize',function(){lib.init();},false); }, init:function(){ this.page.bodyWidth=document.body.clientWidth; this.page.liList= this.options.dom.getElementsByTagName('li'); this.page.domUL = this.options.dom.getElementsByTagName('ul')[0]; this.options.dom.style.width=this.page.bodyWidth+'px'; for(var i=0;i<this.page.liList.length;i++){ var item = this.page.liList[i]; var img = item.getElementsByTagName('img')[0]; item.setAttribute('index',i); item.style.width=this.page.bodyWidth+'px'; img.style.width = this.page.bodyWidth+'px'; } if(this.page.liList.length<3){ var length = this.page.liList.length; if(length==1){ this.page.domUL.appendChild(this.page.liList[0].cloneNode(true)); this.page.domUL.appendChild(this.page.liList[0].cloneNode(true)); }else{ for(var i=0;i<length;i++){ this.page.domUL.appendChild(this.page.liList[i].cloneNode(true)); } } this.page.liList= this.options.dom.getElementsByTagName('li'); } }, position:function(index){ this.Event.position.call(this,this,index); }, next:function(){ this.Event.next.call(this,this); }, prev:function(){ this.Event.prev.call(this,this); }, start: function(arg){ this.setoption(arg); this.init(); this.position(); this.bindEvent(); this.Event.domUpdate(this,'l'); this.Event.start(this); } }; var loaded=function(){ w.WapImage=new WapImage(); w.WapImages=new WapImage(); }; (function(){ if(d.body){ loaded(); }else{ if(d.addEventListener){ d.addEventListener( 'DOMContentLoaded', function(){ d.removeEventListener( 'DOMContentLoaded', arguments.callee, false ); loaded(); }, false ); }else if(d.attachEvent){ d.attachEvent( 'onreadystatechange', function(){ if( d.readyState === 'complete' ){ d.detachEvent( 'onreadystatechange', arguments.callee ); loaded(); } }); } } })(); })(window,document,undefined); window.onload = function(){ var obj = { dom:document.getElementById('wapListImage'), isupdate:true, time:3000, isfor:true, leftOrright:'left', callBack:function(obj){ var span = document.getElementById('wapListImage').getElementsByTagName('dl')[0].getElementsByTagName('span'); for(var k = 0;k<span.length;k++){ span[k].className=''; } span[obj.index-1].className='selected' // console.log(obj.index) } }; WapImage.start(obj); WapImage.position(2) var obj2 = { dom:document.getElementById('wapListImage1'), callBack:function(obj){ // console.log(obj.index) } }; WapImages.start(obj2); // var img = new w.WapImage(); // img.start(obj); } </script> </body> </html>
Wenn Sie nicht mehrere Bildwechseleffekte benötigen, finden Sie var geladen=function()
var obj = { dom:document.getElementById('wapListImage'),//dom元素 isupdate:true,//是否自动切换 time:3000,//自动切换的时间毫秒 isfor:true, //是否循环播放,即到最后一张是否直接转入第一张,或到第一张直接转入最后一张 leftOrright:'left',//像左侧自动切换还是像右侧自动切换 callBack:function(obj){//切换成功后回调函数 其实有index参数为当前第几张图片 //自己处理 var span = document.getElementById('wapListImage').getElementsByTagName('dl')[0].getElementsByTagName('span'); for(var k = 0;k<span.length;k++){ span[k].className=''; } span[obj.index-1].className='selected' // console.log(obj.index) } }; WapImage.start(obj); WapImage.position(2)
wie
w.WapImage=new WapImage();
w.WapImages=new WapImage();Sie können es direkt nach dem Laden der Seite aufrufen
WapImage.start() und WapImages.start()

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



Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Wie fusioniere ich Array -Elemente mit derselben ID in ein Objekt in JavaScript? Bei der Verarbeitung von Daten begegnen wir häufig die Notwendigkeit, dieselbe ID zu haben ...

Diskussion über die Realisierung von Parallaxe -Scrolling- und Elementanimationseffekten in diesem Artikel wird untersuchen, wie die offizielle Website der Shiseeido -Website (https://www.shiseeido.co.jp/sb/wonderland/) ähnlich ist ...

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...

JavaScript zu lernen ist nicht schwierig, aber es ist schwierig. 1) Verstehen Sie grundlegende Konzepte wie Variablen, Datentypen, Funktionen usw. 2) Beherrschen Sie die asynchrone Programmierung und implementieren Sie sie durch Ereignisschleifen. 3) Verwenden Sie DOM -Operationen und versprechen Sie, asynchrone Anfragen zu bearbeiten. 4) Vermeiden Sie häufige Fehler und verwenden Sie Debugging -Techniken. 5) Die Leistung optimieren und Best Practices befolgen.

Erforschen Sie die Implementierung der Funktion des Bedien- und Drop-Einstellungsfunktion der Panel ähnlich wie VSCODE im Front-End. In der Front-End-Entwicklung wird VSCODE ähnlich wie VSCODE implementiert ...
