Avatar billede tonse Nybegynder
16. juli 2007 - 18:37 Der er 21 kommentarer og
2 løsninger

Ændre tags i iframe editor

Hej allesammen.

Jeg har et lille problem som jeg bare ikke kan finde ud af. I min wysiwyg Editor kan jeg indsætte links, billeder og det hele, men jeg ville meget gerne kunne ændre parameterne når de er indsat. f.eks. vil jeg gerne kunne ændre href adressen i et link når jeg klikker på linket.

jeg har prøvet alverdens ting men jeg kan ikke engang få fat i nodeName osv. Nogen der har et foreslag til hvordan det kan lade sig gøre??
Avatar billede olebole Juniormester
16. juli 2007 - 18:43 #1
<ole>

Læg et link, så vi kan se, hvor du er nået til og hvad vi kan hjælpe med  =)

/mvh
</bole>
Avatar billede windcape Praktikant
16. juli 2007 - 18:43 #2
Hvad nu hvis jeg sagde at det ikke kunne lade sig gøre ?-)

Jeg vil istedet anbefale at du laver en view-source funktion som her , http://dragons-lair.org/projects/RTE/ (homemade :p), og så redigere dem der.

JavaScript er umidbart ikke det bedste sprog, og med så mange forskellige APIs og browsere er det kort sagt en umulig opgave du ønsker at udføre.
Avatar billede tonse Nybegynder
16. juli 2007 - 20:55 #3
Her er der et link til min editor.. koden er rodet og sikkert meget forkert. Men har ikke så meget erfaring med javascript.

http://tonse.frac.dk/editor/

Jeg ved dog at det kan lade sig gøre. De store editors rundt omkring kan det og jeg ved at man kan gøre det i ie med en div editor.
Avatar billede olebole Juniormester
17. juli 2007 - 12:08 #4
Du skal nok kikke på de to store browseres dokumentation angående rich text editing:
    http://msdn2.microsoft.com/en-us/library/ms536419.aspx
    http://msdn2.microsoft.com/en-us/library/ms533049.aspx

- og:
    http://www.mozilla.org/editor/midas-spec.html
Avatar billede olebole Juniormester
17. juli 2007 - 12:10 #5
- men hvis du ikke er stærk i JavaScript, kan det undre, du ikke vælger en færdig editor. Hvis det er for at lære JavaScript, burde du måske vælge et andet projekt med mere standardiseret JavaScript ... noget, du kunne lære noget mere brugbart af  =)
Avatar billede windcape Praktikant
17. juli 2007 - 12:47 #6
- eller ihvertfald lære closures til denne størrelse projekt ;-)
Avatar billede tonse Nybegynder
19. juli 2007 - 12:52 #7
Jeg har skam masser af forstand på programmering, har bare aldrig brugt javascript til andet end til at tjekke tekst felter er udfyldt korrekt, så problemet er ikke at projektet er for stort for mig, elsker udfordringer. Grunden til at jeg ikke vælger en af de gratis editors rundt omkring er at jeg er ved at få et føl af at jeg ikke rigtig kan ændre dem til det jeg vil have. Det er for besværligt.
Og allerede er jeg da kommet rimeligt langt med min editor, så nu stopper jeg ikke.

Tak for linksne olebole, har dog kigget grundigt på dem, og kan stadig ikke finde noget der gør at jeg kan få fat i et tag i mit dokument.

Det jeg vil er egentlig bare at mine knapper indikeret den slags tekst jeg har valgt. som her: http://tinymce.moxiecode.com/example.php?example=true

Når man klikker på fed tekst, så bliver knappen markeret.
Er dette slet ikke muligt i firefox?
Avatar billede olebole Juniormester
19. juli 2007 - 13:04 #8
Hvis ikke din programeringserfaring dækker JavaScript, DOM og indgående kendskab til de forskellige browseres særheder, er den ikke til stor hjælp her. Det, vi taler om, er faktisk kun i ringe grad JavaScript, men derimod proprietære udvidelser for hver enkelt browser.

Tro mig (og windscape): Det er langt lettere at ombygge en eksisterende editor - og nej, det lyder absolut ikke, somom du er kommet langt (og synet af din kode undebygger stærkt denne tese). Faktisk er der ikke noget af din kode, der er realistisk at bruge i en editor  ;o)
Avatar billede tonse Nybegynder
19. juli 2007 - 13:28 #9
Forstår nu ikke helt hvad i mener. Kan godt være at min kode ikke er den mest korrekte i verden, men den virker da umiddelbart. Det ville være mig en stor hjælp hvis i kunne komme med nogle eksempler på noget der ikke virker.

Og ja, indrømmer at min viden til javascript og Dom er manglende, men der er jo kun en måde at lære det på, og det er at prøve.

Hvad forventes der af en editor siden min ikke virker på nogen måde? for mig skal jeg jo bare kunne ændre noget tekst og kunne se det live. Og det kan jeg, og da det kun er til mig selv, så passer den jo mit behov. Så lidt mere konstruktiv kritik kunne være dejligt.
Avatar billede olebole Juniormester
19. juli 2007 - 14:06 #10
Den kritik, du har fået, har været yderst positiv og konstruktiv - ikke mindst din kode taget i betragtning. Jeg lagde de to links, så du kunne lære det fra bunden - herunder at 'highlighting' af knapper - men det kræver, at du naturligvis også undersøger de links, der på MS' sider står under "See also".

Det, du efterspørger er - uanset, om du selv kan se det eller ej - en tutorial af en størrelse, der er helt urealistisk for en Eksperten-tråd.

Du lærer ikke noget særligt om JavaScript ved at skrive en editor. Det handler som sagt primært om proprietære browserudvidelser - men en god JS-indsigt er til gengæld en forudsætning for at kunne sætte sig ind i og anvende disse udvidelser.

Vi har på intet tidspunkt skrevet, at din editor ikke virker. For en programmør er det bare ikke et kvalitetsstempel i sig selv. Krig, narko og fri hastighed i byerne er således fantastisk virksomt mod overbefolkningen - men et yderst fattigt værktøj til opnåelse af målet.

De kodere, som her på sitet kan finde ud af at skrive en sådan editor, får du ikke til at skrive dårlig kode, selvom det 'bare er til mig selv'. Det tager vi kodning alt for alvorligt til - og dårlig kode i eksorbitante mængder er i forvejen WWW's største problem.
Desuden er det i et Eksperten-spørgsmål som dette langtfra kun spørgeren, der skal hjælpes. Det er også de 20 andre, der læser anonymt med - og de hundreder som ad åre vil komme til at læse tråden, når de søger på emnet.
Avatar billede tonse Nybegynder
19. juli 2007 - 14:35 #11
Jeg siger skam tak for de links du har givet mig. Og ja jeg kan kun give dig ret i langt det meste du siger, bortset fra konstruktiv kritik.

Ville bare gerne have et eksempel på hvorfor min kode er så dårlig, og hvad jeg burde læse for at gøre den bedre. Har kigget på closures som windscape skrev og retter på livet løs. Men hvad der er rigtigt og hvad der er forkert er der så mange meninger om.

Jeg beder heller ikke om at nogen skal skrive en guide til mig, jeg ville bare ledes i retningen af hvad jeg skulle kigge på, og det gjorde du da, men bare ikke noget jeg rigtig har kunne bruge, for tror ikke helt du forstår min problem stilling. Tror forresten også at jeg har fundet en løsning, som jeg tester lige nu.

Og alt det med at alle lærer af min kode, det er rigtigt, jeg lærer rigtig meget herinde fra, faktisk er det eksperten der har lært mig det meste af min rædselsfulde kode...
Men et sted bliver jeg nød til at starte, og er ked af hvis gode programmøre ikke vil hjælpe nye programmøre som mig selv fordi vi laver "grimme" koder. Læser på livet løs i bøger og på nettet, så du skal ikke fortælle mig at jeg ikke undersøger tingene!

Men så skal jeg nok lade min dårlige kode ligge og komme tilbage engang når jeg er prof :S
Avatar billede tonse Nybegynder
19. juli 2007 - 14:37 #12
Håber ikke jeg er for grov. Ved godt at i hjælper alt hvad i kan og påskynder det virkelig. Så håber ikke i bliver fornærmet.
Min kode er grim, det indrømmede jeg fra starten. Så nu prøver jeg at omskrive min kode, kan være jeg skriver igen hvis jeg kommer i problemer med de nye metoder..
Avatar billede olebole Juniormester
19. juli 2007 - 18:41 #13
Du er ikke spor grov. Det er fint, du forstår, det ikke er dig, der bliver kritiseret, men din kode  :)

Kritikken er nok så konstruktiv, som den kan blive. En rich-text editor er som sagt et _meget_ stort emne at dække fra bunden - og det er nok, hvad der er brug for.

Jeg er helt enig i, at man skal begynde et sted, hvilket da også er grunden til, jeg gennem mine snart otte år på Eksperten har besvaret over 3.000 spørgsmål og deltaget i fire-fem gange så mange. Problemet er bare, at det ikke er et projekt, du lærer ret meget JavaScript af, da det ikke indebærer særlig meget JS.

Closure-problemer har du ikke noget særligt af i koden. Jeg tror, det var en lidt inside kommentar fra windscape til mig, da jeg på det seneste har rettet folks opmærksomhed på IE's problemer med garbage-collection (herunder circular references og closures) i forbindelse med AJAX og OOP.
Nu objektorienterer du godtnok ikke din kode, men det ville ellers være oplagt (ikke mindst i forbindelse med knapperne). Jeg tror, det var den udløsende faktor for dén bemærkning  =)

Af dårligheder kan specielt nævnes din brug af try/catch. Den er udtryk for dårlig kodestil i enhver sprogsammenhæng. try/catch bruges yderst sjældent og kun i situationer, hvor koderen på forhånd ingen chance har for at vide, om en given fremgangsmåde er mulig.
I stedet for f.eks. i din init-funktion at bruge try/catch som 'panik-løsning', bør du undersøge, hvad den aktuelle browser understøtter - og efterfølgende bruge det.
Der er adskilligt mere, men det hører ikke direkte under JavaScript.

Derudover er det noget vrøvl at skrive denne type applikation som XHTML. Nu bruger du godtnok kun version 1.0-Transitional, som i sig selv er noget vås (en eksperimentel standard uden nogen somhelst forskelle fra HTML - med undtagelse af nogle ligegyldige kosmetiske småting).

Langt mere alvorligt er det, når windscape forsøger at skrive XHTML1.1 samtidig med, at hele hans script er komplet inkompatibelt med XHTML - og at han iøvrigt server dokumentet helt forkert. Så er der ikke ret meget, der kan være mere ligegyldigt, end om hans markup-kode validerer!
Hvis browserne overholdt blot en anelse af XHTML-standarderne, ville hans dokument aldrig loade - men browseren gå ned med et hult suk og en XML-fejl  =)
Avatar billede windcape Praktikant
20. juli 2007 - 04:37 #14
Hov, havde ikke opdaget at jeg brugte en gammel xhtml template på den side, det er en fejl.

Alt min RTE source er udviklet til HTML4 :) Specielt fordi at MIDAS overhovedet ikke er udviklet til xhtml, den producere udelukkende html4 html.
Men nu er den online udgave også snart ½ år gammel , jeg har nogle nyere versioner liggende.

Men som OleBole har pointeret et par gange , er browserene specielt det store problem. IE volder mig stadig store problemer, og jeg tør slet ikke tænkte på Opera/Safari.
Avatar billede windcape Praktikant
20. juli 2007 - 04:38 #15
Derudover skal det måske siges at min RichTextEditor er en omskrivning af et XBL module (til XUL,Firefox Extension), hvilket var den oprindelige ide (som blev færdiggjort, meget nemt).

HTML var således en yderlig udvidelse , som desværre var meget meget sværere.
Avatar billede windcape Praktikant
20. juli 2007 - 04:47 #16
http://web27190.web08.talkactive.net/rte/ , hvis i skulle være interasseret.
Avatar billede tonse Nybegynder
20. juli 2007 - 15:29 #17
Tusind tak ole, det kalder jeg konstruktiv kritik! Jeg ved godt at sådan noget som catch og try er noget møj.. men har nok været en smule doven, er igang med en kæmpe omskrivning, her vil jeg også bruge oop, så lader alt andet lægge lidt nu før jeg har fået skrevet en ordentlig kerne. Kan være jeg skal bruge en smule hjælp til omskrivningen lidt senere.

Men det med xhtml er egentlig bare pga. jeg tit laver design i dreamviewer og så koder jeg i jedit, så det havde jeg egentlig bare glemt at fjerne. Men da jeg så fjernede det så virkede intet i mit dokument. Så har vel brugt de standarder som xhtml har. Har også læst mig lidt til at man burde bruge xhtml så derfor gør jeg det... men ved egentlig ikke om det er bedre...

Men kan i to ikke svare? så kan i jo dele de points der er! og tak for en lille opsang, kan godt se nu at det nok ikke var så godt som jeg håbede. Men har nu stadig stor tro på at det nok skal blive godt!

Smid et svar i to og tak for hjælpen!
Avatar billede olebole Juniormester
20. juli 2007 - 15:52 #18
Selvtak. Jeg har selv siddet i udviklermiljøer og fået gennemtæsket min koder (læs: børn - hehe), men 'bank og stryg' har hjulpet mig og mine kodeevner enormt - omend det altid er svært at se i situationen  ;o)

Der er frygtelig megen forvirring omkring XHTML, så jeg skrev på et tidspunkt et par artikler om emnet:
    http://www.eksperten.dk/artikler/537
    http://www.eksperten.dk/artikler/538

Vedr. OOP og closures, som vi talte om tidligere, lægger jeg nogle artikler om emnet op på www.dengodekode.dk lidt senere på eftersommeren og hen over efteråret. Der vil også komme en del artikler om JavaScript, DOM og AJAX ... og forhåbentlig en masse andet sjovt. Det er på tide, der kommer et artikel/tutorial-site, hvor fejlprocenten er under 70  ;oD

F.eks. kunne man sagtens forestille sig, du kunne gøre god brug af denne kode:
    http://www.dengodekode.dk/laundry/

- som vi diskuterede i dette spm:
    http://www.eksperten.dk/spm/787800

På med luffen - og god fornøjelse  ;o)
Avatar billede olebole Juniormester
20. juli 2007 - 15:56 #19
PS: Koden i min 'markup-laundry' er ikke optimal. Den var oprindelig et quick 'n' dirty projekt i cowboy-kode - og er endnu ikke blevet gennemskrevet ordentligt.

Eneste grund til, den kom op nu, er, at den anden bruger stod og skulle bruge noget til at uploade sin kode med fra en editor - og så kunne koden ligeså godt blive rettet/renset lidt op  =)
Avatar billede tonse Nybegynder
20. juli 2007 - 16:32 #20
Det lyder super!! vil følge med på dit site så! Jeg vil da se lidt på din kode, kan jo være at man får brug for noget af det. Og en anden gang er du skam velkommen til at give mig et par på hovedet når jeg på et tidspunkt kommer igen med mine nye forsøg :)

Venter lige på windscape og ser om han også vil lægge et svar selvom ingen af jer rigtig svarede på mit oprindelige spørgsmål, så har i begge to gidet at deltage, det skal i da have kredit for! :)
Avatar billede olebole Juniormester
20. juli 2007 - 16:38 #21
Jeg vil blæse på, om windscape vil ... han _skal_ lægge svar ...!!!  ;oD
Avatar billede windcape Praktikant
20. juli 2007 - 18:11 #22
så okay da :p
Avatar billede olebole Juniormester
21. juli 2007 - 21:12 #23
Tak for points  ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester