ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
307
307
EMPFEHLEN
-
Hallo,
ich habe eine Webseite mit momentan einer Ebene. Diese kann ich mittels meines vorhandenen Scripts bewegen.
Soweit funktioniert alles. Nun möchte ich das die neue Position der Ebene in einen Cookie gespeichert wird - die Funktion müsste bereits im aktuellen Script sein. Was nicht funktioniert ist, das die neue Position auch wieder abgerufen wird - dafür habe ich auch ein Script - mir gelingt es nur nicht beide miteinander zu kombinieren.
Zur Info: Die beiden Scipts habe ich nach langem suchen im Web gefunden. Meine Programier-/JavaScriptkenntnisse gehen gleich null - sollte mir also jemand helfen können/wollen - ich benötige etwas mehr hilfe als nur einen kleine Hinweis ; )
Hier ist der Teil den ich noch in das bestehende Script einfügen muss:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
function init() { // Cookie lesen: var cookieString = liesCookie("Layout"); if (cookieString) { // Array mit Wertpaaren erzeugen: var divPosArray = cookieString.split("+"); for (i=0; i<divs.length; i++) { // Werte aus Wertpaar lesen: var posX = divPosArray[i].split(",")[0]; var posY = divPosArray[i].split(",")[1]; // Elemente positionieren: if (document.layers) { divs[i].left = posX; divs[i].top = posY; } else { divs[i].style.left = posX; divs[i].style.top = posY; }
Und hier meine bestehende Html-Seite incl. des funktionierenden Scripts:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>test</title> <script language="JavaScript1.2" type="text/javascript"> <!-- drag = "inaktiv"; aktivX = 0; aktivY = 0; // Wir brauchen eine neue globale Variable, die das derzeit // aktive Element angibt: aktivDiv = null; // Ausserdem halten wir den z-index-Wert des derzeit aktiven // Elements fest, damit wir das nächste aktive Element // darüber legen können. Am Anfang setzen wir ihn einfach // auf 1000: aktivZindex = 1000; function init() { // Im Array divs[] sammeln wir alle (positionierten) div- // Elemente der Seite: divs = (document.layers) ? document.layers : (document.all) ? document.all.tags("DIV") : document.getElementsByTagName("DIV"); // Jetzt weisen wir jedem div den MouseDown-Handler zu: for (i=0; i<divs.length; i++) { if (divs[i].captureEvents) // Netscape 4 divs[i].captureEvents(Event.MOUSEDOWN); divs[i].onmousedown = mdown; } // die andern Handler nicht vergessen: if (document.captureEvents) // Netscape document.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP); document.onmouseup = mup; document.onmousemove = mmove; } window.onload = init; function mdown(e){ // Wir müssen onmousedown herausfinden, welches div- // Element aktiviert wurde. Dazu benutzen wir "this". // Dann zählen wir den bislang höchsten z-Index-Wert eins // nach oben und weisen ihn dem aktiven div zu. Der Rest // ist wie gehabt. aktivDiv = this; if (document.layers) aktivDiv.zIndex = aktivZindex++; else aktivDiv.style.zIndex = aktivZindex++; drag = "aktiv"; aktivX = (e) ? e.pageX : event.clientX + document.body.scrollLeft; aktivY = (e) ? e.pageY : event.clientY + document.body.scrollTop; return false; } function mmove(e){ // fast keine Änderungen im Vergleich zum einfachen // Drag&Drop if (drag == "inaktiv") return; var neuX = (e) ? e.pageX : event.clientX + document.body.scrollLeft; var neuY = (e) ? e.pageY : event.clientY + document.body.scrollTop; var distX = (neuX-aktivX); var distY = (neuY-aktivY); aktivX = neuX; aktivY = neuY; if (document.layers) { aktivDiv.left += distX; aktivDiv.top += distY; } else { aktivDiv.style.left = parseInt(aktivDiv.style.left) + distX; aktivDiv.style.top = parseInt(aktivDiv.style.top) + distY; } } function mup(e){ drag = "inaktiv"; // Cookie-String zusammenstellen: var cookieString = ""; for (i=0; i<divs.length; i++) { var posX = (document.layers) ? divs[i].left : parseInt(divs[i].style.left); var posY = (document.layers) ? divs[i].top : parseInt(divs[i].style.top); cookieString += posX + "," + posY + "+"; } // Verfallspunkt in 100 Tagen: var jetzt = new Date(); var verfall = new Date(jetzt.getTime() + 1000*60*60*24*100); // Cookie schreiben: schreibCookie("Layout", cookieString, verfall); } //--> </script> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> </head> <body> <div id="Layer1" style="position:absolute; width:200px; height:115px; z-index:1; left: 253px; top: 203px; background-color: #666666; layer-background-color: #666666; border: 1px none #000000;"></div> </body> </html>
-
Moin,
ich sehe dort nirgends die Funktionen liesCookie() und schreibCookie() .
Ähnliche Themen
-
Ebenen mit Ebenennamen speichern
Von Alexander Groß im Forum PhotoshopAntworten: 3Letzter Beitrag: 23.11.09, 20:15 -
Ebenen als dds Dateien speichern
Von csmi im Forum PhotoshopAntworten: 4Letzter Beitrag: 19.02.09, 00:24 -
probleme beim speichern von mehreren ebenen
Von herecurahel im Forum Sonstige Grafik-ProgrammeAntworten: 1Letzter Beitrag: 23.01.07, 21:55 -
Per Script alle Ebenen als PNG speichern
Von fastfred im Forum PhotoshopAntworten: 6Letzter Beitrag: 10.02.06, 17:01 -
feste positon
Von Darkfire im Forum HTML & XHTMLAntworten: 1Letzter Beitrag: 09.03.04, 19:11





Zitieren
Login





