WYSIWYG, fed skrift?

Tags:    javascript

<< < 12 > >>
Hej udviklere..

Jeg har siddet og rodet en del med et WYSIWYG system, og er også ved at være helt færdig med det, det eneste jeg mangler nu er, at få den til at tjekke om den tekst man trykker på, eller markerer er fx. fed, kursiv, understreget, højre/venstrestillet osv..

Er der nogen der kan forklare mig, hvordan jeg laver den kommando der tjekker når man markere noget nyt tekst?

Jeg skal bare vide hvordan man får den til at udskrive True eller False på den tekst man står på..

Jeg har læst lidt om kommandoen
queryCommandEnabled('bold'), som godt nok tjekker om der er fed skrift, men den jeg har sat ind, tjekker for hele dokumentet. Hvordan får jeg den til at tjekke kun for den aktuelle markering?

Håber i kan/vil hjælpe mig ;)

Ps. jeg har kigget rundt omkring på google, men ved ikke hvad jeg skal søge efter, og har ikke kunne finde noget ind til videre..



11 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
du skriver
if(document.attachEvent)
document.getElementById(iFrameId).contentWindow.document.attachEvent("onkeydown",function);
else if(document.addEventListener)
document.getElementById(iFrameId).contentWindow.document.addEventListener("keydown",function,false);



Hey..

Jeg kender jo ikke til det hele, men du kan få det valgte fra et textarea eller hvad du nu måtte bruge:

function display(txtarea){
var sl = (txtarea.value).substring(txtarea.selectionStart, txtarea.selectionEnd);
prompt ("The place you have selected is:",sl);
return sl.queryCommandEnabled('bold')
}

Giver det mening i contexten eller har du mulighed for at sende noget mere kode ?

/JJ



Indlæg senest redigeret d. 04.03.2008 16:43 af Bruger #5789
Jeg bruget et iFrame med designmode slået til, så dit eksempel virker ikke, desværre..

Og med hensyn til kode, kan jeg ikke rigtigt se hvad der skulle være nødvendigt at sende? Det drejer sig om et iframe med designmode on og med et id, ud fra det burde det være muligt at finde ud af noget ;)

(Det er mere fordi den kode jeg har er meget lang :S)



du skal have fat i dit iframe og så bruge:
if((iframeElementet).queryCommandState("bold"))
//det er slået til
else
//det er ikke slået til

Du skal tage og læse de artikler der er på udvikleren om det emne



Indlæg senest redigeret d. 04.03.2008 18:06 af Bruger #11596
Det var også det jeg selv kom frem til, men hvordan får jeg den så til at tjekke det hvergang jeg flytter min markør?
Er det noget med en Timeout der starter en funktion der tjekker det hvert halve sekund eller noget i den stil, eller er der en lettere og mindre krævende måde at gøre det på?



I iframeet laver du en onkeydown



okay.. Når det er keydown, tager den så også med når man væler et nyt sted med musen?



hvorfor ikke bare bruge noget der findes i forvejen?
http://tinymce.moxiecode.com/



okay.. Når det er keydown, tager den så også med når man væler et nyt sted med musen?

Og også onmousedown



okay.. Når det er keydown, tager den så også med når man væler et nyt sted med musen?

Og også onmousedown


Du må meget undskylde at jeg bliver ved med at spørge så meget, men hvordan laver man de onkeydown og onmousedown events på et iFrame? Er det noget der skal aktiveres via Javascript, eller hvordan?



<< < 12 > >>
t