Drugi koniec wynika w pewien sposób z pierwszego ;-)
Ostatnio w pracy dodawałem do naszej aplikacji edytor HTML do wysyłania maili. Fajna zabawa, ale dzięki różnemu podejściu do standardów każda z przeglądarek miała inne wymagania. Najtrudniejsza stała się współpraca z ramką w której użytkownik może pisać, i do której należy ładować szablony. Z różnych powodów robić to muszę ze strony mającej w sobie IFRAME'a z edytorkiem.... i tu zaczęły się kłopoty ;-)
Użycie
ramka.document.innerHTML
[gdzie ramka
to element naszej ramki] działa w większości przypadków, ale wymaga by strona w ramce została załadowana... Na niektórych przeglądarkach można to przeskoczyć przy użyciu ramka.contentWindow.document.innerHTML
ale też nie zawsze.Oczywistym rozwiązaniem po spostrzeżeniu tego problemu jest pomysł by użyć takiego kodu:
// ramka.document.clear(); - akurat clear nie działa ;-)
ramka.document.close();
ramka.document.open();
ramka.document.write(....);
Ale po spostrzeżeniu, że
ramka.document.innerHTML
może nie istnieć pomysł z pisaniem do elementu document
wydaje się bez sensu. Oczywiste jest, że to nie będzie działać. Za prost jest........Ale działa ;-)
Gdy na to wpadłem [po 3 sekundach od zauważenia, że pisanie do
innerHTML
nie działa] nawet nie próbowałem jak to działa uznając za oczywiste, że nie działa i zacząłem kombinować... po 2 czy 3 podejściach odkryłem jednak że lepiej jednak sprawdzić i wtedy okazało się, że jednak takie rozwiązanie działa ;-)Dlatego zasada na dziś: sprawdzać oczywiste!
Podobne postybeta
Ściana, czyli rozbijam się na onclick ;-)
IE suxx ;-)
ToDo od Trello jako "oddzielna aplikacja"
Sudoku - rozwiązanie doskonałe ;p
Programowanie trudne ;-)
Brak komentarzy:
Prześlij komentarz