Article View: pl.comp.lang.javascript
Article #39568Re: Obejście patentu Eolas, kolejne starcie
From: Bogdan Blaszczak
Date: Sun, 23 Apr 2006 13:24
Date: Sun, 23 Apr 2006 13:24
54 lines
3272 bytes
3272 bytes
porneL napisał(a): > Stąd podejście kolejne, zamotane: Oj zamotane, zamotane.. Wasze problemy wynikają z tego, że inner/outerHTML to nie jest dokładnie to co napisaliście w źródle strony. Tak naprawde, to jest to co przeglądarka sobie "wykreuje" po przeparsowaniu HTML i JS. A przeglądarki sobie to kreują różnie, kwadratowo i podłużnie. Na przykład w źródle masz <br />, a w innerHTML to już jest <BR> A co IE wyprawia z object-em, to sami widzicie ;) Mniejsza o to.. Chciałbym wam pokazać pewną metodę, którą zrobiłem już dawno temu, a która teraz może się okazać przydatna. http://blatek.co.uk/blateksatay2/ Celem metody nie było obejście patentu Eolas, jeszcze wtedy o tym nie było mowy. Celem było wymuszenie streamingu w IE za pomocą JS. Założenie było takie, że kod object-a ma być "czyściutki" (taki jak jest dla Mozilli albo Opery), natomiast "przystosowanie" kodu dla IE ma sie odbywać w stosunkowo malutkim pliku zewnętrznym JS. Otóż co się okazało. Jeśli kod obiektu jest umieszczony wewnątrz <noscript>, to IE nie tworzy tego obiektu w drzewie DOM-owym, a zawartość noscript-a traktuje jako "czysty string" (można powiedzieć jak komentarz). Czyli innerHTML noscript-a, to jest dokładnie to co napisaliśmy w źródle strony... hurraaa.. Teraz sprawa jest prosta. Wystarczy pobrać nasz "czysty string", za pomocą prostego regexpa podmienic atrybut 'type' na atrybut 'classid' i tak przygotowanego stringa zaaplikować jako outerHTML dla <noscript>. Czyli jednocześnie likwidujemy <noscript> i aplikujemy obiekt flasza przygotowany dla IE. Dlaczego <noscript> jest w komentarzu warunkowym IE? Ano dlatego żeby przeglądarki inne niż IE (Moz, Opera itd) wszystko to olały i pobrały sobie "normalny" kod. Czy flash działa w IE, gdy wyłączona jest obsługa JS? Tak. Czy metada ta stanowi obejście dla patentu Eolas? Teoretycznie tak. Jak już wcześniej pisałem, metoda nie była robiona dla obejścia tego patentu, ale teoretycznie spełnia warunki żeby ten patent obejść. Mamy zewnętrzny plik. Mamy dynamiczne wstawienie obiektu za pomocą outerHTML. W tej chwili nie jestem w stanie tego sprawdzić. Gdyby ktoś zupdateowany mógł to sprawdzić, to byłbym wdzięczny. -- BlaTek
Technical Details
Message-ID:
<e2fvb7$j5q$1@nemesis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<op.s8e207j7fux2e6@pornel.net>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: Bogdan Blaszczak <blatek@UsuN-AntyspaMpoczta.wprost.pl> Newsgroups: pl.comp.lang.javascript Subject: Re: Obejście patentu Eolas, kolejne starcie Date: Sun, 23 Apr 2006 15:24:29 +0200 Organization: Disorganization Department Lines: 54 Message-ID: <e2fvb7$j5q$1@nemesis.news.tpi.pl> References: <op.s8e207j7fux2e6@pornel.net> NNTP-Posting-Host: ejc98.internetdsl.tpnet.pl Mime-Version: 1.0 X-Trace: nemesis.news.tpi.pl 1145798823 19642 83.15.84.98 (23 Apr 2006 13:27:03 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Sun, 23 Apr 2006 13:27:03 +0000 (UTC) User-Agent: Thunderbird X-Accept-Language: pl, en-us, en In-Reply-To: <op.s8e207j7fux2e6@pornel.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit