En ny test suite for rich text redigering
Dette indlæg er af Roland Steiner i Chrome Team. Roland arbejder primært på layout og gengivelse af Chrome og WebKit. En østrigsk indfødte, har Roland vovet langt og gjort Tokyo hans andet hjem. -Scottk
Mange web-applikationer giver brugerne mulighed ikke bare for at redigere ren tekst, men også for at forskønne det - hvilket gør den fed eller understreget, tilføjer punktopstilling eller billeder. For eksempel, tænk på online-dokument eller blog redaktører, eller rige e-mail apps. JavaScript giver forskellige API'er du kan bruge til at gennemføre disse apps.
Desværre, mens disse API'er i vid udstrækning er defineret ens i moderne browsere, resultaterne afviger ofte. For at dokumentere den aktuelle tilstand af alt dette, har vi oprettet en ny rig tekstredigering test suite som en del af det større browserscope rammer.
Lad os se på, hvordan en region af tekst, såsom en <div> kan blive markeret som redigeres ved at tilføje contenteditable attribut:
<div contenteditable=\"true\"> ... noget indhold ... </ Div>
Du kan derefter manipulere indholdet med simple opkald:
document.execCommand (\ "formateringskommando \", showUI, parameter) For eksempel kan du indstille farven på den markerede tekst til rød med denne indkaldelse:
document.execCommand (\ "Forgrundsfarve \", falske, \ "rød \") Selvom denne kommando virker godt på de fleste browsere, forskellige browsere gennemføre forskellige delgrupper i formateringskommandoer, og selv almindelige kommandoer ofte producerer varierende HTML strukturer.
Der er andre API'er, der påvirker udvælgelsen og markøren flyttes, eller tillade søgning i den aktuelle situation, og de er også ofte implementeret forskelligt.
Vores nye test suite forsøger at indfange alle for øjeblikket gennemføres kommandoer og API'er, og kører dem på varierende oprindelige HTML-indhold og i forskellige beholdere. Suiten indeholder allerede godt over 1.000 tests.
Vi ønsker ikke at stoppe der. Vi agter at dyrke suite og indarbejde eksterne tilbagemeldinger og forslagene, så vi kan nå frem til en fælles sæt af redigeringsfunktioner. Vi håber, at dette kan derefter fungere som en fælles reference, ikke kun for browser gennemførende kræfter, men også for web-udviklere.
For at nå dette mål, vil vi gerne input fra alle interesserede i dette emne, herunder med tidligere klager over fejl og uoverensstemmelser i dette område.
For forslag, kritik og generel diskussion om suite og tests, kan du sende feedback til browserscope postliste på browserscope@googlegroups.com.
Abonner på:
Kommentarer til indlægget (Atom)
Ingen kommentarer:
Send en kommentar