Hallo!
ich will einen Schieberegler programmieren, den man bei gedrückter Maustaste bewegen kann (für IE):
("div_scroll" ist die id des div-Elements im HTML-Code, in dem das Schieberegler-Bild mit der id "scroll_button" liegt.)
Grundgerüst der JS-Datei :
document.onmousedown = readinpos;
document.onmouseup = stopMoveScroller;
function readinpos() {
if (window.event.srcElement.id == "scroll_button") {
scrollButton=window.event.srcElement.parentElement;
dx=window.event.clientX - scrollButton.style.pixelLeft;
document.onmousemove=moveScroller;
}
}
function stopMoveScroller() {
document.onmousemove=null;
}
function moveScroller() {
document.all.div_scroll.style.pixelLeft=window.event.clientX-dx;
}
Wenn ich jedoch den Schieberegler anklicke, und bei gedrückter Maustaste bewegen will, kommt nur ein schwarzes Zeichen (wie ein Halteverbotsschild). Erst wenn ich die Maustaste loslasse, bewegt sich der Schieberegler mit der Maus.
Zu diesem Zeitpunkt sollte jedoch das onmousemove-Event ja gar nicht mehr aktiv sein (->stopMoveScroller).
Durch erneutes Klicken greift dann die Funktion stopMoveScroller, und der Schieberegler bewegt sich nicht mehr mit der Maus.
Jemand eine Ahnung wo der Fehler liegt?
ich will einen Schieberegler programmieren, den man bei gedrückter Maustaste bewegen kann (für IE):
("div_scroll" ist die id des div-Elements im HTML-Code, in dem das Schieberegler-Bild mit der id "scroll_button" liegt.)
Grundgerüst der JS-Datei :
document.onmousedown = readinpos;
document.onmouseup = stopMoveScroller;
function readinpos() {
if (window.event.srcElement.id == "scroll_button") {
scrollButton=window.event.srcElement.parentElement;
dx=window.event.clientX - scrollButton.style.pixelLeft;
document.onmousemove=moveScroller;
}
}
function stopMoveScroller() {
document.onmousemove=null;
}
function moveScroller() {
document.all.div_scroll.style.pixelLeft=window.event.clientX-dx;
}
Wenn ich jedoch den Schieberegler anklicke, und bei gedrückter Maustaste bewegen will, kommt nur ein schwarzes Zeichen (wie ein Halteverbotsschild). Erst wenn ich die Maustaste loslasse, bewegt sich der Schieberegler mit der Maus.
Zu diesem Zeitpunkt sollte jedoch das onmousemove-Event ja gar nicht mehr aktiv sein (->stopMoveScroller).
Durch erneutes Klicken greift dann die Funktion stopMoveScroller, und der Schieberegler bewegt sich nicht mehr mit der Maus.
Jemand eine Ahnung wo der Fehler liegt?