[Forum "bug"?] Schnellantwort mit Firefox 1.5
Moderators: Hacker, Stefan2, white
- StickyNomad
- Power Member
- Posts: 1933
- Joined: 2004-01-10, 00:15 UTC
- Location: Germany
[Forum "bug"?] Schnellantwort mit Firefox 1.5
In Firefox 1.0.x hatte ich damit nie Probleme, aber mit FF 1.5 erhalte ich nach dem Markieren von Text und Klick auf 'zitat' die Meldung "kein Text markiert". Das Übernehmen des Usernamens per Klick funktioniert aber noch. Kann das jemand nachvollziehen? Ist keine grosse Sache, aber es macht die Schnellantwort halt weniger schnell...
Mit Opera klappt's, auch wenn ich mich als Mozilla ausgebe. Mit K-Meleon, der die Gecko-Engine nutzt, klappt's ebenfalls, liegt dann wohl definitiv am Browser, nicht an der Forumssoftware.
Hm, vielleicht verschluckt er sich an der einleitenden Klammer?
Icfu
Hm, vielleicht verschluckt er sich an der einleitenden Klammer?
Code: Select all
<!--
function pasteQ() {
if (document.getSelection) txt = document.getSelection();
else if (document.selection) txt = document.selection.createRange().text;
else return;
if (txt=='')
alert('Kein Text markiert!');
else
document.post.message.value = document.post.message.value + '[quote]' + txt + '[/quote]\n';
}
//-->
This account is for sale
- StickyNomad
- Power Member
- Posts: 1933
- Joined: 2004-01-10, 00:15 UTC
- Location: Germany
2icfu
dies hat FF's JS-Konsole ausgegeben:
Seltsam, das. Folgendes Beispiel aus SelfHTML klappt in FF 1.5 dank zusätzlicher Abfrage einwandfrei:
also dürfte das entweder ein FF Bug sein, oder hat mit dessen Implementierung von JavaScript 1.6 zu tun, evtl wurde hier die Unterstützung für document.get... fallen gelassen. Ich hab leider noch keine detaillierte Übersicht über die Änderungen in JS 1.6 gefunden...
Hm, mit älteren Operas hatte ich da oft Probleme, aber Opera 8.5 tuts in der Tat einwandfrei.iegt dann wohl definitiv am Browser, nicht an der Forumssoftware
dies hat FF's JS-Konsole ausgegeben:
Code: Select all
Deprecated method document.getSelection() called. Please use window.getSelection() instead.
Code: Select all
function selektierterText () {
if (window.getSelection) {
alert(window.getSelection());
} else if (document.getSelection) {
alert(document.getSelection());
} else if (document.selection) {
alert(document.selection.createRange().text);
}
}
- ghisler(Author)
- Site Admin
- Posts: 50817
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Ist wohl ein Bug von FF 1.5 - offenbar wird beim Klick auf "Zitat" zuerst die Markierung gelöscht und anschliessend das Javascript aufgerufen statt umgekehrt - es gibt dann keine Möglichkeit mehr, an den markierten Text zu kommen...
Ich werde vorläufig bei Firefox 1.07 bleiben.
Ich werde vorläufig bei Firefox 1.07 bleiben.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- ghisler(Author)
- Site Admin
- Posts: 50817
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Nein, tut es nicht, weil zum Zeitpunkt des Klicks leider nichts mehr markiert ist!und es funzt ganz sicher nicht mit window.getSelection?
Ich habe jetzt doch noch eine Lösung gefunden.

Ich kopiere den markierten Text einfach in OnMouseOver, und füge ihn dann ein, wenn man auf den Link klickt. Hier der veränderte Code für alle, die das in eigene Foren einbauen wollen:
Code: Select all
<script language='JavaScript' type='text/javascript'>
<!--
var quickreply_paste_text = '';
function copyQ() {
txt='';
if (document.getSelection) txt = document.getSelection();
else if (document.selection) txt = document.selection.createRange().text;
if (txt!='')
quickreply_paste_text=txt;
}
function pasteQ() {
txt='';
if (document.getSelection) txt = document.getSelection();
else if (document.selection) txt = document.selection.createRange().text;
if (txt=='')
txt=quickreply_paste_text;
if (txt=='')
alert('".$lang["No_Text_Selected"]."');
else
document.post.message.value = document.post.message.value + '[quote]' + txt + '[/quote]\\n';
}
//-->
</script>
<form action='".append_sid("posting.$phpEx")."' method='post' name='post'>
<span class='genmed'><b>".$lang["Quick_Reply"].":</b>
<a href=\"javascript:pasteQ()\" onMouseOver=\"copyQ()\">".$lang["Quote"]."</a>
<br />";
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- StickyNomad
- Power Member
- Posts: 1933
- Joined: 2004-01-10, 00:15 UTC
- Location: Germany
2ghisler(Author)

Ich habe jetzt doch noch eine Lösung gefunden.

Hm, seltsam. Wenn ich mich nicht verlesen habe, wird laut aktuellem Gecko DOM nur noch 'window.getSelection' unterstützt, 'document.getSelection' jedoch nicht mehr. Scheint demnach wirklich ein FF Bug zu sein.(window.getSelection) tut es nicht, weil zum Zeitpunkt des Klicks leider nichts mehr markiert ist!
Hast Du den Bug von Firefox schon bei Bugzilla gemeldet?StickyNomad wrote: Hm, seltsam. Wenn ich mich nicht verlesen habe, wird laut aktuellem Gecko DOM nur noch 'window.getSelection' unterstützt, 'document.getSelection' jedoch nicht mehr. Scheint demnach wirklich ein FF Bug zu sein.
- ghisler(Author)
- Site Admin
- Posts: 50817
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Das wird wohl nichts bringen, weil das offenbar ein neues "Feature" das Firefox ist: Bei den 1.0x-Versionen bekamen Buttons und Bilder bei einem Klick darauf nicht den Fokus, beu 1.5 scheint das aber der Fall zu sein. Dadurch geht die Markierung verloren, bevor das Skript gestartet wird.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Themawechsel: Wenn ich FF 1.5 minimiere wird überhaupt kein Speicher freigegeben. Bug or feature? Übersehe ich hier was? Jedenfalls ist das der Grund, warum ich wieder FF 1.0.7 installiert habe...
tbeu
tbeu
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
- ghisler(Author)
- Site Admin
- Posts: 50817
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Soll angeblich über About:config einstellbar sein, kann es aber gerade nicht finden. Mir passt die neue Einstellung, weil der FF früher ewig gebraucht hat zum Wiederherstellen. Der neue ist immer sofort da, weil er eben seinen Speicher nicht frei gibt.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- ghisler(Author)
- Site Admin
- Posts: 50817
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact: