2012-08-13 14 views
6

Właśnie zacząłem używać contentEditable, i nie znalazłem wiele obszernych informacji na ten temat.contentEditable, CTRL-B CTRL-I i zapisywanie

Zauważyłem, że w Chrome, mogę uczynić słowa pogrubienie/kursywa naciskając CTRL - B i CTRL - I.

Czy to może być zamierzone zachowanie w innych przeglądarkach? To, na przykład, działa w Chrome:

<div class="container" id="typer" onclick="this.contentEditable='true';"> 

http://jsfiddle.net/uk6DA/15/

Zastanawiam się, czy mogę przeczytać to formatowanie, w celu zaoszczędzenia edycje tego użytkownika? Ponadto, można utworzyć Bold przycisku i kursywy, które wyzwoli CTRL - B i CTRL - I? A może muszę polegać na naciśnięcie CTRL użytkownika - B i CTRL - I (co oznacza zapewnienie im notatkę mówiąc im)?

Odpowiedz

16

Jest to standard we wszystkich większych przeglądarkach. Istnieją również programowe odpowiedniki skrótów klawiaturowych dostępnych przez document.execCommand() we wszystkich głównych przeglądarkach. Pogrubienie i kursywa polecenia, na przykład, mogą być wykonywane w następujący sposób:

document.execCommand("Bold", false, null); 
document.execCommand("Italic", false, null); 

Jednak dopłata generowane waha się między przeglądarkami. Na przykład odmiany pogrubione obejmują <b>foo</b>, <strong>foo</strong> i <span style="font-weight: bold">foo</span>.

Referencje:

+0

Dzięki, to bardzo pomocne.Ale czy wiesz, dlaczego ten przykład (http://jsfiddle.net/uk6DA/15/) nie działa w IE9? Przynajmniej ctrl-B i ctrl-I nie są. Czy execCommands zadziała? – Dave

+0

Nieważne. Moja własna strona działa. Strona JSFiddle nie z jakiegoś powodu. – Dave

+0

@Dave: Tak, myślę, że to jest problem z JSFiddle. –

2

Krótka odpowiedź "tak". Może Cię zainteresować ten article. Wielu deweloperów poszło tą drogą. Jeśli chcesz mieć miły edytor WYSIWYG, jest wiele do wyboru.

Na twoje pytanie: tak, możesz przeczytać formatowanie. Wypróbuj innerHTML na elemencie, a wokół twoich pogrubień znajdziesz znaczniki <b> i pod kursywą <i>. Również w artykule, który udostępniłem, dowiesz się, jak utworzyć przycisk, który będzie pogrubiony. Mam nadzieję że to pomoże!

+0

Dzięki Chciałabym przyjąć obie odpowiedzi, ale mogę tylko przyjąć jedną. :( – Dave

+0

Wszystko co dobre Dave! Jego wersja była bardziej kompletna Tak szczerze grałem z contentEditable z powrotem w ciągu dnia Ale jest tak wielu udanych i "kompatybilnych" edytorów WYSIWYG - nie ma powodu, aby wymyślać koła. Twoje własne lekkie doświadczenie może być zabawne, ciekawe i jeśli twoje potrzeby są lekkie, to kolejny problem z większością edytorów WYSIWYG - są połączeniem hacków dla IE5, 6 itd. Dzięki Bogu wkraczamy w przyszłość IE8 +:) –

+0

Próbuję utworzyć unikalny interfejs użytkownika. Jeszcze raz dziękuję za pomoc! – Dave

Powiązane problemy