CSS Curser ändern beim verschieben

mercsen

Lt. Commander
Registriert
Apr. 2010
Beiträge
1.680
Cursor ändern beim verschieben

Moin liebe CB gemeinde.

ich arbeite derzeit an einem 3 spaltigem Layout mit variabler spalten größe, ich habe also ein script geschrieben mit dem man die begrenzungen verschieben kann und die splaten passen sich dann der neuen breite an. Soweit so einfach.

Fährt man mit der maus über eine randmakierung ändert sich cursor zu w-resize. Bewegt man nun diemaus aus dem element raus (aber hat den mausbutton gedrückt) verschiebt sich alles wie gewünscht aber der cursor ändert sich zu default.

Ich habe das nun so umgangen, das ich, sobald der "drag" vorgang startet allen elementen per
$('*').css('cursor','w-resize');
einen anderen cursor verpasse und beim drag wird wieder gewechselt.

das überschreibt nun natürlich alle alten cursor informationen, da ich auch nicht weiß wie ich ein per .css() hinzugefügtes attribute wieder entferne :-/
(Man könnte natürlich alle elementen die klasse 'w-cursor' oder ähnliches zuordnen, aber auch nicht ganz toll ^^)

es aufauto zu stellen ändert nichts, ich kann höchstens einen ungültigen wert eintragen (was jquery aber nicht zulässt) und vorher bei jedem element zu gucken welchen cursor es hat scheint mir sehr unökonomisch.

Gibt es da nicht eine schönere methode?
Ein CSS selektor?

Das makieren konnte ich einfach verhindern aber der cursor nervt mich nun :(
 
Zuletzt bearbeitet:
Schreib ne Klasse .cursor mit der Deklaration .cursor * {cursor:'w-resize';} und häng diese Klasse beim Drag an den Body an und nimm sie wieder weg, wenn der Drag vorbei is. So modifizierst du nur ein Element im DOM, änderst das Rendering aber komplett.
 
Omg das ist einfach noch zu früh am morgen.

Ich trottel hatte das versucht, aber statt body document genommen gehabt. So klappts auch ohne extra klasse aber mit ist natürlich schöner.

Beschämendes danke ;)
 
Zurück
Oben