Die Eigenschaften div.style.left und div.style.top css können nicht über JavaScript eingestellt werden

8

Ich lief heute ein sehr verwirrendes Problem

Ich habe eine Leinwand und ein div, so

%Vor%

Ich setze dann die Eigenschaften des div über eine CSS-Datei, z. Position: absolut und Anzeige: keine Dann schreibe ich die X / Y-Position im div via JS und versuche, die Eigenschaften des div so zu setzen, dass das div der Maus folgt, wie dies

%Vor%

Das Lustige ist jetzt: Ich kann die Anzeige und BackgroundColor ohne ein Problem einstellen, aber die linken und oberen Eigenschaften funktionieren nicht. Wenn ich jedoch meine DOCTYPE-Deklaration in meiner HTML-Datei lösche, kann ich die linken und oberen Eigenschaften problemlos ändern. Das Arbeiten ohne Doctype ist natürlich ausgeschlossen. Mache ich etwas, was nicht getan werden sollte oder etwas völlig Offensichtliches vermissen?

    
Ramon Wenger 27.04.2012, 13:13
quelle

3 Antworten

11

Sie haben "px" vergessen:

%Vor%

Sie können auch div.style.position = "absolute";

hinzufügen

Wenn Sie der Meinung sind, dass e.pageX oder e.pageY Zeichenfolgen statt Zahlen sind, werfen Sie eine parseInt in:

%Vor%     
ke20 27.04.2012 13:15
quelle
0

Eine weitere Methode zum Festlegen von Stileigenschaften wie DIV-Objekten ist die setProperty-Methode

Sie können unten Javascript-Codebeispiel

überprüfen %Vor%     
Eralper 24.02.2016 16:22
quelle
0

Ich hatte auch dasselbe Problem, aber als ich ein Leerzeichen in das leere div eingefügt habe, hat es richtig positioniert. d. h.

%Vor%     
Kulbhushan Chaskar 08.03.2016 05:55
quelle

Tags und Links