Dobry wieczór, pierwsze pytanie tutaj!TinyMCE, IE9, stripping <script> tagi
Szukałem i sprawdziłem, i znalazłem rozwiązania, które nie działają. Mój problem polega na tym, że IE9 (i 8, 7 itd.) Usunie tagi w TinyMCE 3.4.3.2.
Obawiam się, że moje okoliczności są trochę wyjątkowe: pracuję z istniejącym systemem CMS (niestandardowym), który jest nieco przestarzały, wykonany w języku Java i nie jest przyjazny dla XHTML. Istnieje niestandardowa wtyczka, która umożliwia wstawienie kodu skryptu, a następnie otacza go znacznikami CDATA
. Zasadniczo:
insertHTML(document.videoForm.myobj.value);
Gdzie insertHTML dobrze, wstawia go gdzie był kursor. Teraz działa to fantastycznie w Chrome, Firefox itp., Ale kończy się niepowodzeniem w IE. Po wstawieniu skryptu za pomocą wyskakującego okna tekstowego, a następnie za pomocą wbudowanej przeglądarki HTML programu TinyMCE, znaczniki <script>
znikają. Umieszczanie <br />
przed tagami skryptu sprawia, że działa z jakiegoś powodu, ale jest to niepożądane, ponieważ wielu klientów nie wie, co to jest HTML.
Używanie programisty IE9 ... coś ... znalazłem błędy.
HTML1114: Codepage unicode from (UNICODE byte order mark) overrides conflicting codepage windows-1252 from (11)
wywołane przez doctype
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-Transitional.dtd">
KTÓRE jest źle, wiem, i chcę go zmienić, ale jestem pod bardzo surowymi ograniczeniami tutaj, i nie mam dostępu do tego typu dokumentów gdziekolwiek jest renderowany.
Kolejna rzecz: tu jest thingymajig extended_valid_elements:
extended_valid_elements: "SCRIPT[language<JavaScript?JavaScript1.1?JavaScript1.2?JScript?php?VBScript|src|wgtsrc|type<text/javascript?mce-text/javascript?javascript],script[language<JavaScript?JavaScript1.1?JavaScript1.2?JScript?php?VBScript|src|wgtsrc|type<text/javascript?mce-text/javascript?javascript],form[name|method|action|id|target|onsubmit],FORM[name|method|action|id|onclick|target|onsubmit],embed[src|type|wmode|width|height],object[class|id|classid|codebase|width|height]"
Jeśli można dostrzec coś tam, że może rzucić IE wyłączyć, należy kierować go na zewnątrz. Jeśli możesz mi powiedzieć, że dziwne doctype rzuca go, daj mi znać i poproszę mojego pracodawcy, gdzie pochowany że ...
TL; DR: IE9 paski tagi w TinyMCE 3.4.3.2, prawdopodobnie z powodu doctype.
Większość przeglądarek nie dba o takie typy dokumentów, a jedynie używa ich do określania "standardów" i trybów renderowania dziwactw (w zasadzie patrząc, czy w ogóle istnieje typ dokumentu * lub nie). Jest to prawdopodobnie coś innego niż wtedy. – hugomg