Heim >Web-Frontend >js-Tutorial >Detaillierte Erläuterung der JS-Implementierung des Bildlupen-Plug-In-Beispiels

Detaillierte Erläuterung der JS-Implementierung des Bildlupen-Plug-In-Beispiels

小云云
小云云Original
2018-01-19 14:18:491817Durchsuche

Dieser Artikel stellt hauptsächlich die Verwendung von JS zur Implementierung des Bildlupen-Plug-Ins vor. Ich hoffe, dass er jedem helfen kann.

Vorwort

Wir alle besuchen oft verschiedene E-Commerce-Websites und müssen eine Lupe verwenden, um die Details der Produkte detailliert darzustellen . Das muss jeder machen, heute machen wir ein Vergrößerungsglas-Plug-in, um zu sehen, wie das Bild vergrößert wird ...

Schauen wir uns zunächst den endgültigen Effekt an wird wie folgt aussehen:

Haben Sie irgendwelche Ideen, nachdem Sie den Effekt gesehen haben? Wenn nicht, schauen wir uns an, wie wir ihn erreichen können~

1 Implementierungsideen

① Um den Effekt des Vergrößerns nach dem Zeigen nach oben zu erzielen, müssen Sie drei PS erstellen, eines wird zum Platzieren des Originalbilds und das andere zum Platzieren verwendet das p für den Vergrößerungseffekt, und das letzte ist der Teil von p, der nach dem Zeigen mit der Maus nach oben vergrößert werden muss (wir verwenden das Tag p, um dieses p zu ersetzen).

② Bestimmen Sie das Vergrößerungsverhältnis. Der wichtigste Punkt ist, dass das p am Mausfinger und das p des Vergrößerungseffekts dem Verhältnis des Originalbilds und des vergrößerten Bilds entsprechen.

③ Zeigen Sie den Vergrößerungseffekt an, nachdem Sie mit der Maus darüber gezeigt haben.

2 Spezifische Implementierungsschritte

Zuerst erstellen wir drei p.


<p id="wrapper"> 
     <!--小图-->
    <p id="img_min"> 
       <!--图片-->
       <img src="img/11.png" alt="min"> 
       <!--跟随鼠标的白块-->
       <p id="mousebg"></p> 
     </p> 
   <!--大图-->
     <p id="img_max">
       <img id="img2_img" src="img/11.png" alt="max">
     </p> 
   </p>

Unser HTML-Codeteil wurde fertiggestellt. Als nächstes verwenden wir JS, um die Funktion zu implementieren:

Fügen Sie drei Ereignisse zum Originalbild hinzu. Sie sind: Mauseingabe, Mausbewegung, Mausbewegung heraus.

Wenn die Maus in das Originalbild bewegt wird, werden das p, wenn die Maus nach oben zeigt, und das p des Vergrößerungseffekts gleichzeitig angezeigt.


img1.onmouseover = function () { 
       //鼠标进入 
       img2.style.display = &#39;block&#39;; 
       mousebg.style.display = &#39;block&#39;; 
      
     }

Mouse-out-Ereignis:


 img1.onmouseout = function () { 
       //鼠标离开 
       img2.style.display = &#39;none&#39;; 
       mousebg.style.display = &#39;none&#39;; 
     }

Der Punkt ist, dass, wenn sich die Maus bewegt, entsprechend an die p-Tag-Position mit dem Originalbild, um den Teil des größeren Bildes anzuzeigen, der vergrößert werden muss.


var _event = event||window.event;//兼容性处理 
var mouseX = _event.clientX - img1.offsetLeft; 
 //计算鼠标相对与小图的位置 
var mouseY = _event.clientY - img1.offsetTop;

Bei der Positionsanalyse müssen Sie vier kritische Situationen berücksichtigen:

Das heißt, wenn sich die Maus von oben, unten bewegt, links oder rechts vom Bild Wenn Sie zum ersten Mal eingeben und der Abstand weniger als die Hälfte der Breite des p auf dem Mausfinger beträgt, wird das vergrößerte p angezeigt und bewegt sich nicht.


//特殊情况处理,分别靠近四条边的时候 
 if(mouseX<mousebg.offsetWidth/2){ 
  mouseX = mousebg.offsetWidth/2; 
   } 
 if(mouseX>img1.offsetWidth-mousebg.offsetWidth/2){ 
  mouseX = img1.offsetWidth-mousebg.offsetWidth/2; 
   } 
 if(mouseY<mousebg.offsetHeight/2){ 
  mouseY = mousebg.offsetHeight/2; 
 } 
 if(mouseY>img1.offsetHeight-mousebg.offsetHeight/2){ 
  mouseY = img1.offsetHeight-mousebg.offsetHeight/2; 
 }

Berechnen Sie abschließend den Anzeigebereich des großen Bildes:


 //计算大图的显示范围 
 img2_img.style.left = -mul*mouseX+img2.offsetWidth/2+"px"; 
 img2_img.style.top = -mul*mouseY+img2.offsetHeight/2+"px"; 
 //使鼠标在白块的中间 
mousebg.style.left = mouseX-mousebg.offsetWidth/2+"px"; 
mousebg.style.top = mouseY-mousebg.offsetHeight/2+"px";

Auf diese Weise , wir verwenden JS Das Plug-In zur Implementierung der Bildlupe ist vollständig.

Verwandte Empfehlungen:

5 in JQuery implementierte Bildlupeneffekte, ein Muss für Websites von Einkaufszentren!

Detaillierte Erläuterung des Beispiels der Verwendung von CSS zur Erzielung des Bildlupeneffekts (Bild)

Wunderbare Javascript-Bildlupen-_Bild-Spezialeffekte

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der JS-Implementierung des Bildlupen-Plug-In-Beispiels. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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