Text auf Seite vor abspeichern manipulieren?

  • Hi,

    Ich speichere ab und an Webseiten im Firefox als .mht Datei ab (mit Hilfe des Addons UnMHT). Da diese Seiten im Normalfall Anleitungen enthalten, würde ich gern einige Textpassagen leicht anpassen, bevor ich UnMHT bemühe (da es keinen wirklich guten Editor gibt, der es mir erlaubt unter Beibehaltung des originalen Layouts den Inhalt nachträglich anzupassen).

    Code
    javascript:document.body.contentEditable='true'; document.designMode='on'; void 0


    In der Adresszeile soll angeblich funktionieren (man würde damit die aktuelle Seite in einen editierbaren Modus schalten), hier tut sich allerdings gar nichts.

    Mir geht es ausschließlich um die geringe Veränderung von Texten! Alles andere soll genauso bleiben wie es ist.

    Die Developer Tools helfen mir dabei leider nicht, reiner Text ist scheinbar nicht veränderbar.

    Gibt es eine schnelle, einfache Methode für das was ich da veranstalten will?

    Danke und Gruß,
    Highend

  • Hallo!

    JavaScript in der Adresszeile wird von Firefox nicht mehr ausgeführt.

    Gib den Code ohne das javascript: am Anfang in die untere Zeile der Web-Konsole oder in die JavaScript-Umgebung ein.

  • Boersenfeger

    Ich hab mich missverständlich ausgedrückt. Ich wollte damit sagen: Es gibt keinen (guten) Editor, mit dem ich im WYSIWYG Modus nachträglich die Seiten bearbeiten kann. Blocknote (http://blocknote.net/index.shtml) kann es zwar grundsätzlich, scheint aber nicht Unicode fähig zu sein (kämpft allein schon mit Umlauten).

    Sicher, selbst Word aus dem Office Paket lässt die Bearbeitung zu, abgespeichert und im Browser aufgerufen erkennt man aber schnell, dass es danach nicht mehr sonderlich dem Original gleicht.

    Selbst Dreamweaver CC kann die Datei nicht im WYSIWYG Modus darstellen, um sie dann zu editieren. Kleine Textanpassungen kann man aber wie auch in NP++ damit vornehmen.

    Ansonsten hast du vollkommen Recht, NP++ kann die .mht Datei laden und lässt dann natürlich auch Textersetzungen zu :)

    aborix

    Danke für den Hinweis, in der Console eingetragen funktioniert es einwandfrei. Damit kann ich im gewünschten Maße im Text unter beibehaltung aller CSS Formatierungen rumfuhrwerken :)

    Gruß,
    Highend

  • MHT ist ein Archiv-Format, das lässt sich eh nicht so einfach bearbeiten. Änderungen müssen also zwangsweise schon bei Firefox-Anzeige getätigt worden sein, dann werden diese auch gespeichert.

  • Zitat von aborix

    JavaScript in der Adresszeile wird von Firefox nicht mehr ausgeführt.

    Gib den Code ohne das javascript: am Anfang in die untere Zeile der Web-Konsole oder in die JavaScript-Umgebung ein.


    Warum das nun wieder...
    Hab das gerade mal mit Autocomplete=Off-Code probiert

    (function(){var%20ca,cea,cs,df,dfe,i,j,x,y;function%20n(i,what){return%20i+"%20"+what+((i==1)?"":"s")}ca=cea=cs=0;df=document.forms;for(i=0;i<df.length;++i){x=df[i];dfe=x.elements;if(x.onsubmit){x.onsubmit="";++cs;}if(x.attributes["autocomplete"]){x.attributes["autocomplete"].value="on";++ca;}for(j=0;j<dfe.length;++j){y=dfe[j];if(y.attributes["autocomplete"]){y.attributes["autocomplete"].value="on";++cea;}}}alert("Removed%20autocomplete=off%20from%20"+n(ca,"form")+"%20and%20from%20"+n(cea,"form%20element")+",%20and%20removed%20onsubmit%20from%20"+n(cs,"form")+".%20After%20you%20type%20your%20password%20and%20submit%20the%20form,%20the%20browser%20will%20offer%20to%20remember%20your%20password.")})();

    Da kommt "SyntaxError: missing variable name"

  • Die Leerzeichen sind durch %20 ersetzt und das bewirkt die Fehlermeldung.
    Dieses Ersetzen wird bei Bookmarklets durchgeführt.

    Versuche es damit:

    Code
    (function(){var ca,cea,cs,df,dfe,i,j,x,y;function n(i,what){return i+" "+what+((i==1)?"":"s")}ca=cea=cs=0;df=document.forms;for(i=0;i<df.length;++i){x=df[i];dfe=x.elements;if(x.onsubmit){x.onsubmit="";++cs;}if(x.attributes["autocomplete"]){x.attributes["autocomplete"].value="on";++ca;}for(j=0;j<dfe.length;++j){y=dfe[j];if(y.attributes["autocomplete"]){y.attributes["autocomplete"].value="on";++cea;}}}alert("Removed autocomplete=off from "+n(ca,"form")+" and from "+n(cea,"form element")+", and removed onsubmit from "+n(cs,"form")+". After you type your password and submit the form, the browser will offer to remember your password.")})();


    Übrigens werden Bookmarklets weiterhin ausgeführt, nur direkt in die Adresszeile eingegebenes JavaScript nicht.