Pass variable mit onclick
Habe ich ein Buch über meine Seite besteht aus 3 iframes, 1 iframe öffnet das Inhaltsverzeichnis und die 2 iframes zu öffnen, 2 Seiten an der gleichen Zeit, auch ich habe 2 Schaltflächen, um durch die Seiten navigieren weiter und zurück durch diese Funktion
var pNum = 1;
var pNum2 = 2;
var maxPage = 108;
pNum = pNum+2;
pNum2 = pNum2+2;
if (pNum > maxPage) {pNum=1;pNum2=2;}
document.getElementById("Frame_C").src="page"+pNum+".jpg";
document.getElementById("Frame_B").src="page"+pNum2+".jpg";
}
function prev(){
pNum = pNum-2;
pNum2 = pNum2-2;
if (pNum < 1) {pNum=107;pNum2=108;}
document.getElementById("Frame_C").src="page"+pNum+".jpg";
document.getElementById("Frame_B").src="page"+pNum2+".jpg";
}
wenn ich auf den link im Inhaltsverzeichnis-es öffnen sich 2 Seiten mit diesem link
<td>
<p class=Mmenu>
<a href="page36.jpg" target="Frame_C" onClick="window.open('page37.jpg','Frame_B')">whatever</a>
</td>
das problem fängt hier an, wenn ich klicken Sie auf weiter, zurück, Taste ich will es weiterhin von der Seite 36,37, aber was passiert, kommt es weiter von pNum in der Funktion, wie Sie das update pNum von onclick ? oder vielleicht eine andere Lösung!!!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Auftritt sorgen, weil Ihr "was auch immer" link verändert sich der Zustand, dass Ihre prev () - Funktion erwartet wird, werden nicht-versaut-mit.
Wenn man irgendeine Art von Zustand (z.B. einige Variablen repräsentieren ein Buch mit Seiten), ist es wichtig, nicht gegen die Darstellung der Invarianten oder interne Darstellung. So
Ein guter Weg, um code so, dass dies der Fall ist, erstellen Sie eine Reihe von speziellen Schnittstellen-Funktionen, die sicherstellen, dass der Zustand konsistent ist (unten gezeigt über eine einzige Funktion gotoPage was macht Sie sicher, alles ist sauber, man konnte mehr als eine einzelne Funktion, sondern Sie würden jedes Bedürfnis, Dinge sauber zu halten).
Erste zu kommen mit den Regeln, die Sie wollen für den internen Zustand. In dem Beispiel unten, die Regel ist "rechterseite ist immer gleich linkerseite+1, und die iframes zeigen immer leftPage.jpg und rightPage.jpg außer wenn es eine ungültige Seite in dem Fall, dass der iframe zeigt eine about:blank".
Versuchen Sie dies:
Dann verwenden Sie nicht eine regelmäßige href oder Ziel, sondern nur:
Dann können Sie tun, entweder von diesen, je nachdem, welche ist am einfachsten:
edit: entfernt(Math) {...} - Anweisung, die Sie verwenden mathematische Funktionen wie abs (), ohne wortreich Aufruf von Math.abs()
with
Aussage wirklich notwendig?