Javascript: Zoom-in auf mouseover OHNE Jquery-plugins

Ist, habe ich mich für diese überall seit Wochen, und ich kann einfach nicht finden, mir etwas zu sagen, was ich falsch mache oder wie man auch gehen. Das Ziel ist, erstellen Sie eine Funktion, ähnlich wie Amazon vergrößern mouseover für Produkte mit kleinen Bildern.

Ich bin derzeit ratlos, wie Sie Vorgehen, obwohl ich mir bewusst bin, dass ich benötigen zwei Bilder - eines in der "zoomed in" - Größe und eines in der "zoomed out" - Größe. Ich bin nicht mit Jquery- ich kann es installieren, oder irgendwelche plugins auf die website über meinen Arbeitgeber den Antrag. Ich bin im Grunde Fragen, für die härtere Antwort, und ich entschuldige mich dafür im Voraus. Ich muss dazu moderate Kratzer. Warnung: ich bin ein Programmier-Student. Nehmen, dass, wie Sie.

Ich habe HTML-und CSS-Skript, und da wir nicht wirklich eine IDE hier ich bin dabei auf codecademy Projekt, Abschnitt, ansonsten müsste ich es Programmieren ganz zu Leben. Sie finden mein code hier, aber ich werde auch nach dem code unten, wie die Verknüpfung gebunden ist, um code ändern, da es verwendet prozeduralen speichern.

Hinweis: ursprünglich hatte ich es so, dass die graue box war Folgendes meine Maus in der relativen Mitte. Es war ein flackern, wie es sich bewegt, aber es hat funktioniert. Derzeit aber ist es entschieden, zumindest auf meinem Arbeits-computer. Ich habe es nicht getestet auf meinem persönlichen computer.

Edit: Der code funktioniert auf meinem Surface Pro 3, obwohl es nicht verfolgen und die Maus aus dem Bild (was ist temporär und etwas zufällige Griff ich). Ich bin mir nicht sicher, warum der code nicht funktioniert auf meinem computer in der Arbeit, obwohl es wahrscheinlich, weil es ein Macintosh OSX version 10.6.8...

HTML-Code:

<!DOCTYPE html>
<html>
<head>
    <link rel='stylesheet' href='style.css'/>
    <script src='script.js'></script>
</head>
<body>

<img id="imgZoom" onmousemove="zoomIn()" onmouseout="zoomOut()" src="http://ginger-mum.com/wp-content/uploads/2015/10/3633-1269758855-0da5042c33400a811a5d766be4579cb8.jpg">
<div id="overlay" onmousemove="zoomIn()"></div>
</body>
</html>

CSS-Code:

#imgZoom {
    height: 300;
}

#overlay {
    visibility: hidden;
    position: absolute;
    left: 0px;
    top: 0px;
    width:20%;
    height:20%;
    padding: 25px;
    border: 5px solid gray;
    background-color: white;
    opacity:0.4;
    text-align:center;
    z-index: 1000;
}

Javascript-code:

function zoomIn()
{
    var element = document.getElementById("overlay");
    element.style.visibility = "visible";

    var x = event.clientX;     //Get the horizontal coordinate
    var y = event.clientY;     //Get the vertical coordinate

    element.style.top = y - 80;
    element.style.left = x - 80;
}

function zoomOut()
{
    var element = document.getElementById("overlay");
    element.style.visibility = "hidden";
}
  • jQuery erfordert keine installation, seine nur, wie das hochladen oder das Hinzufügen von Dateien auf web-server oder wenn Sie nicht wollen, das einfügen von script-tag mit src vom jQuery CDN oder seiner website <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.min.js" type="text/javascript"></script>
  • Sorry, ich dachte, JQuery benötigt einiges an installation, vor allem, wenn Sie verwenden möchten Dinge wie Bootstrap. Wo ich zur Schule für die Programmierung, die meisten meiner Lehrer haben davor gewarnt, uns nicht darauf zu verlassen, JQuery, da es mehr eine Krücke als eine todsichere Antwort - nicht, dass JQuery ist eine schlechte Sache, es ist gerade als student versuche ich zu lernen, die die volle Methode. Ich nehme an, das ist hauptsächlich der Grund, warum ich nicht wollen, es zu benutzen, so dass ich lernen kann, wie man es manuell tun. Ich bin eigentlich hauptsächlich ein Programmierer für Videospiele, so lächerlich schwierig-code, kein Helfer ist in der Regel, was ich den ganzen Tag machen
  • Ich Stimme mit Ihnen überein, da Sie lernen, Sie haben ein Recht zu wissen, wie die Dinge gemacht sind von es-core, aber in Zukunft daran denken, das Rad neu erfinden ist schlecht, wo Sie arbeiten in der Zeit-Einschränkung, wenn Sie können es leicht tun mit etwas Werkzeug, becoz, die Sie nicht wissen, Wann Sie Ihre Sachen zu brechen
  • oh absolut, ich gar nicht bestreiten. Sie warnen uns vor, dass auch. Zum Glück mein Arbeitgeber ist daran interessiert, dass es funktioniert auf seine eigene, als auch - das ist mehr eine entry-level-position, und sehr lax auf, wie Dinge getan werden, also nehme ich meine Zeit, um glatt zu arbeiten. Später, natürlich, einmal habe ich volles Verständnis, ich werde der Einsatz schneller Methoden! Geschwindigkeit ist immer der Schlüssel in jeder Branche
InformationsquelleAutor Kitfoxpup | 2015-11-19
Schreibe einen Kommentar