DOCTYPE = XHTML
Raik
- javascript
Hallo!
folgendes script (ausschnitt) arbeitet im firefox mit doctype "HTML 4.01" korrekt, aber liefert mit doctype "xhtml" falsche werte, so dass die textarea immer weiter vergrössert wird:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
var TA = document.getElementsByTagName('TEXTAREA')[0];
function startRSZ(){
TA.addEventListener('mousedown', this.startMOV, true);
}
function startMOV(e){
document.addEventListener('mousemove', resizeTA.resizeTA, true);
TAw = e.pageX;
TAh = e.pageY;
window.addEventListener('mouseup', resizeTA.stopMOV, false);
}
function resizeTA(e){
TA.style.width = parseInt(TA.offsetWidth) + (e.pageX - TAw)+'px';
TAw = e.pageX;
TA.style.height = parseInt(TA.offsetHeight) + (e.pageY - TAh)+'px';
TAh = e.pageY;
}
freundl. Grüsse aus Berlin, Raik
Hallo!
da fehlte ja noch der titel, sorry.
wieso kann ich verdammt noch mal den beitrag nicht absenden? wieso komm ich immer wieder hier zum editieren, wenn ich nachricht absenden clicke???
PS: hab herausgefunden, dass style.width/height und offsetWidth/Height unter xhtml unterschiedliche werte zurückgeben.
freundl. Grüsse aus Berlin, Raik
Hallo Raik.
wieso kann ich verdammt noch mal den beitrag nicht absenden? wieso komm ich immer wieder hier zum editieren, wenn ich nachricht absenden clicke???
In einem solchen Fall hat die hiesige Software normalerweise noch etwas an deinem Posting auszusetzen.
Einen schönen Samstag noch.
Gruß, Mathias
Hallo, Mathias!
wieso kann ich verdammt noch mal den beitrag nicht absenden? wieso komm ich immer wieder hier zum editieren, wenn ich nachricht absenden clicke???
In einem solchen Fall hat die hiesige Software normalerweise noch etwas an deinem Posting auszusetzen.
hatte sie auch, nur hatte sie mir das nicht mitgeteilt. :-D ist aber inzwischen im bugtracker eingetragen.
freundl. Grüsse aus Berlin, Raik
Hallo!
so, die lösung kopier ich einfach mal dazwischen:
> var TA = document.getElementsByTagName('TEXTAREA')[0];
> function startRSZ(){
> TA.addEventListener('mousedown', this.startMOV, true);
> }
> function startMOV(e){
> document.addEventListener('mousemove', resizeTA.resizeTA, true);
> TAw = e.pageX;
> TAh = e.pageY;
if(!e.target.style.width){
var w = e.target.offsetWidth;
e.target.style.width = w + 'px';
e.target.style.width += (w + e.target.offsetWidth);
}
if(!e.target.style.height){
var h = e.target.offsetHeight;
e.target.style.height = h + 'px';
e.target.style.height += (h + e.target.offsetHeight);
}
> window.addEventListener('mouseup', resizeTA.stopMOV, false);
> }
jetzt lässt sich statt offsetWidth style.width verwenden und das ganz so verkürzen:
> function resizeTA(e){
TA.style.width = parseInt(TA.style.width) + (e.pageX - TAw) + 'px';
> TAw = e.pageX;
TA.style.height = parseInt(TA.style.height) + (e.pageY - TAh) + 'px';
> TAh = e.pageY;
> }
Hallo Raik
var TA = document.getElementsByTagName('TEXTAREA')[0];
Also ich würde mal sagen, dass es in XHTML keine TEXTAREA gibt, sondern eher textarea.
Auf Wiederlesen
Detlef
--
- Wissen ist gut
- Können ist besser
- aber das Beste und Interessanteste ist der Weg dahin!
Hallo, Detlef!
Also ich würde mal sagen, dass es in XHTML keine TEXTAREA gibt, sondern eher textarea.
die "nicht vorhandene" "TEXTAREA" wird aber trotzdem resized von dem script, also ist ihm gross und kleinschreibung wohl doch nicht so wichtig.
allerdings unterscheiden sich unter xhtml die werte von style.width und offsetWidth, was das unerwartete verhalten erklärt. jetzt muss ich dafür nur noch eine lösung finden.
freundl. Grüsse aus Berlin, Raik
Hallo Raik
allerdings unterscheiden sich unter xhtml die werte von style.width und offsetWidth, was das unerwartete verhalten erklärt. jetzt muss ich dafür nur noch eine lösung finden.
Dann verwende doch in resizeTA() ausschließlich style.width.
Auf Wiederlesen
Detlef
Hallo, Detlef!
Dann verwende doch in resizeTA() ausschließlich style.width.
das dachte ich mir auch schon ;-)
nur scheint zumindest diese schreibweise unter xhtml nicht erlaubt zu sein. ich erhalte zumindest keinen wert.
freundl. Grüsse aus Berlin, Raik
Hallo Raik
... ich erhalte zumindest keinen wert.
Hast du denn einen Wert gesetzt?
Auf Wiederlesen
Detlef
Hallo Raik,
--
Der IE ist wichtig. Man benötigt ihn, um sich einen Browser zu besorgen.
wieso das denn? Einen Command Line FTP Client hat doch nahezu jedes OS, sogar Windows. Und das genügt doch schon!
Schönen Abend noch,
Martin
habe d'ehre Der
--
Der IE ist wichtig. Man benötigt ihn, um sich einen Browser zu besorgen.wieso das denn? Einen Command Line FTP Client hat doch nahezu jedes OS, sogar Windows. Und das genügt doch schon!
Ansonsten hilft auch ein Zeitschriftenladen oder eine Tankstelle aus. ;-)
man liest sich
Wilhelm