Moin,
arbeite zur Zeit an einem Handy-System. Das Handy ist bereits beweglich, wonach ich allerdings suche,
ist die Möglichkeit, die Position auch so zu speichern, wie das Handy möglicherweise verschoben wurde und
beim nächsten Aufruf des Handys wieder dort auftauchen zu lassen, wo die Position abgespeichert wurde.
Hier der Code meines leeren Divs und der darunter liegenden JavaScript-Funktion. Der Speichercode,
wenn man ihn so nennen kann, ist ganz unten entlang der Funktion zu finden.
Code
<body style="overflow: hidden;">
<div id="mobile">
</div>
<script>
//Make the DIV element draggagle:
dragElement(document.getElementById("mobile"));
function dragElement(elmnt) {
var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0;
if (document.getElementById(elmnt.id + "mobile")) {
/* if present, the header is where you move the DIV from:*/
document.getElementById(elmnt.id + "mobile").onmousedown = dragMouseDown;
} else {
/* otherwise, move the DIV from anywhere inside the DIV:*/
elmnt.onmousedown = dragMouseDown;
}
function dragMouseDown(e) {
e = e || window.event;
e.preventDefault();
// get the mouse cursor position at startup:
pos3 = e.clientX;
pos4 = e.clientY;
document.onmouseup = closeDragElement;
// call a function whenever the cursor moves:
document.onmousemove = elementDrag;
}
function elementDrag(e) {
e = e || window.event;
e.preventDefault();
// calculate the new cursor position:
pos1 = pos3 - e.clientX;
pos2 = pos4 - e.clientY;
pos3 = e.clientX;
pos4 = e.clientY;
// set the element's new position:
elmnt.style.top = (elmnt.offsetTop - pos2) + "px";
elmnt.style.left = (elmnt.offsetLeft - pos1) + "px";
}
function closeDragElement() {
/* stop moving when mouse button is released:*/
document.onmouseup = null;
document.onmousemove = null;
}
function saveDragElement() {
/* Speichert die Position des verschobenen Handys*/
}
}
</script>
</body>
Alles anzeigen
Hier die CSS-Datei mit #mobile
Code
#mobile {
position: absolute;
z-index: 9;
width: 240px;
height: 430px;
background-color: grey;
border-radius: 6px;
}
Mit freundlichen Grüßen
Kristik47