gezocht : "visuele" editor
Pagina: « vorige 1 2 3 volgende »
WYSIWYG editor
edit: deze werkt dus alleen in IE, omdat andere browsers de MSHTML module niet kennen. De Midas-versie ga ik misschien in de kerstvakantie wel eens maken.
Ik heb even een min of meer werkend voorbeeld van die editor online gezet: edit: deze werkt dus alleen in IE, omdat andere browsers de MSHTML module niet kennen. De Midas-versie ga ik misschien in de kerstvakantie wel eens maken.
Gewijzigd op 21/12/2005 20:45:00 door Jan Koehoorn
Jah.. wat ik dus eigenlijk wil is dat die in zowel de IE als in de andere veelgebruikte browsers gaat werken. Het ziet er wel goed uit die editor van jou. Ga er zeker even mee aan de slag, dwz als ik inzage kan krijgen in de code :P.
Als je de complete code wilt, stuur me dan ff een PM met je e-mailadres. Dan mail ik je de PHP en de JS bestanden.
idd, hij werkt niet goed in safari maar is echt cool
@ Hipska: klopt, hij werkt alleen in IE. Ik heb hem een jaar of twee geleden gemaakt, vandaar dat hij (nog) niet crossbrowser is. Leuk dat je hem evengoed "vet" vindt!
Ik wil dit namelijk een beetje leren, om en een cms te maken. (dat is het uiteindelijke doel) maar ik wil een gastenboek aanpassen, zodat via zo'n editor berichten worden toegevoegd, en daarvoor moet ik eerst weten hoe het werkt.. En mooie tuts zijn hierover helaas moeilijk te vinden.
Klopt, ik heb me er indertijd ook helemaal gek naar gezocht. Ik wil er wel eens een tut over maken, maar dan moet hij ook werken in Gecko browsers.
Tjah.. ik blijf zoeken.. als ik wat tegenkom, dan hoor je het wel :)
Is er dan 1 generieke code voor? Of moet je dan eerst kijken welke browser wordt gebruikt en dan daarvoor de juiste code aanroepen?
Ja, het tweede. Je moet een browser-detect doen.
ok, daar was ik al bang voor :( maarjah.. eerst de tijd en de inzet, daarna komt de rest wel :) Ik begrijp in ieder geval nog hoe het werkt :)
Maar dan eerst eens uitzoeken welke verschillende functies (voor beide browsers) feitelijk hetzelfde doen.
function wrapper_executeCommand(command)
{
if(document.executeCommand)
{
return document.executeCommand(command)//ie-benadering
}
elseif(document.doCommand)
{
return document.doCommand(command)//FF-benadering
}
}
Dit is een voorbeeld, want doCommand bestaat helemaal niet in FF. Maar je snapt wel wat ik bedoel hoop ik.
editableDocument.execCommand("Bold", false, null);
en dat lijkt verdomd veel op de MicroSoft manier. Dus voor een heleboel commando's zul je naar mijn oordeel geen wrapper nodig hebben.
In IE werkt die MSHTML module trouwens pas vanaf 5.5 (uit mijn hoofd) dus daar moet je ook op detecteren.
document.getElementById("edit").contentDocument.designMode="on";
doet hetzelfde als:
edit.put_contentEditable("true")
Die codes zijn alleen wel zo verschillend dat mijn idee waarschijnlijk meer werk is dan voor beide wat apparts maken.
Zo doe ik het met event handling en ook XMLHTTPRequest, werkt prima. Voordelen daarbij zijn dat je geen serversided nodig hebt, niets variabel (dus onvoorspelbaar) is en het lekker logisch voor jezelf blijft.
Edit: en voor wie hem liever niet zelf gaat maken: Kevin Roth heeft een aardige, gratis crossbrower editor gemaakt. Download-link
Gewijzigd op 22/12/2005 16:55:00 door Jan Koehoorn
Jah, ik had het gezien.. Maar bij beiden kan het volgens mij wel met allebij de browsers bij een divje. Het voorbeeld dat ze bij midas geven is een iframe. Er staat niet dat dat de enige is waarbij het kan. Ze pakken ook de id van het element, dus ik denk dat er meerdere mogelijkheden zijn. Ik zal het wel eens gaan testen..
@ Robert: heb ik al eens gedaan, en alleen een iframe werkte.