abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 07:00 | Zajímavý článek

Na stránkách Google SRE (Site Reliability Engineering) je volně k dispozici nová kniha Building Secure and Reliable Systems vydaná v nakladatelství O’Reilly.

Ladislav Hagara | Komentářů: 0
dnes 06:00 | Nová verze

Byla vydána nová verze 1.44 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.44 bude vydáno také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

Ladislav Hagara | Komentářů: 3
včera 20:22 | Nová verze

Bylo vydáno ICQ New, tj. nová vylepšená verze letos již čtyřiadvacetiletého ICQ. Linuxový balíček ve formátu snap je k dispozici na Snapcraftu.

Ladislav Hagara | Komentářů: 3
včera 17:33 | IT novinky

Společnost Cloudflare na svém blogu informuje, že přešla z reCAPTCHA na hCAPTCHA. Jako důvody uvádí ochranu soukromí uživatelů, občasné výpadky Google služeb v Číně a také úsporu finančních prostředků.

Ladislav Hagara | Komentářů: 6
včera 15:22 | Komunita

Nadace GNOME ve spolupráci s Endless spustila Community Engagement Challenge. Cílem této výzvy je přitáhnout k open source novou generaci vývojářů. Máte-li nápad, jak toho dosáhnout, můžete se přihlásit do 1. července. Mezi vybrané projekty bude rozděleno 65 000 dolarů.

Ladislav Hagara | Komentářů: 16
včera 09:00 | Komunita

Git (Wikipedie), distribuovaný systém správy verzí vytvořený Linusem Torvaldsem, původně pro vývoj Linuxu, slaví 15 let. Vývoj Gitu započal v dubnu 2005. Bylo potřeba nahradit proprietární BitKeeper.

Ladislav Hagara | Komentářů: 2
včera 08:00 | Nová verze

Google Chrome 81 byl prohlášen za stabilní (YouTube). Nejnovější stabilní verze 81.0.4044.92 tohoto webového prohlížeče přináší řadu oprav a vylepšení. Vylepšeny byly také nástroje pro vývojáře (YouTube). Opraveno bylo 32 bezpečnostních chyb.

Ladislav Hagara | Komentářů: 0
včera 07:00 | Nová verze

Linuxová distribuce Tails zaměřená na ochranu soukromí na internetu byla aktualizována. Vydání 4.5 přináší bezpečnostní opravy nejen ve webovém prohlížeči Tor Browser (nyní 9.0.9); nově je podporován Secure Boot.

Fluttershy, yay! | Komentářů: 0
7.4. 23:00 | Zajímavý článek

Článek na blogu vývojářů Badoo představuje klasický unixový nástroj cron sloužící k plánování úloh. Shrnuje jeho historii, způsob použití s příklady a rozdíly mezi verzemi, jakožto i základní návrh.

Fluttershy, yay! | Komentářů: 0
7.4. 07:00 | Nová verze

Dnes odpoledne vyjde Mozilla Firefox 75.0. Oficiální verze ve formátu Flatpak je již k dispozici na Flathubu. Přehled novinek bude zveřejněn v poznámkách k vydání a na stránce věnované vývojářům.

Ladislav Hagara | Komentářů: 16
Chodíte do práce?
 (26%)
 (1%)
 (3%)
 (3%)
 (46%)
 (14%)
 (6%)
Celkem 230 hlasů
 Komentářů: 4, poslední 2.4. 14:20
Rozcestník
Aktuální zápisy

www.AutoDoc.Cz

Ajaxslt, XPath a content type text/html

19.10.2007 09:57 | Přečteno: 1346×

Google občas takhle vypustí do divočiny nějaký ten open source software. Za jeden z nejzdařilejších považuju ajaxslt, což je kompletní (téměř -- kromě local-name() a namespace-uri()) implementace XPath 1.0 a XSLT 1.0 v čistém JavaScriptu. Šílenost a onanie, řeknete si. Jenže ono ve světě JavaScriptu / client-side DOMu není moc technologií, které by dokázaly nabídnout větší efektivitu při dolování informací z markupu.

Samozřejmě jsem si hned napsal funkci, nazval ji _, podobně jako chlapci z jQuery tu svoji pro zjednodušení častého používání nazvali $. Pak ale nastal problém s typem obsahu odesílaného dokumentu. Když byl dokument odesílán se správným content type, tedy jako application/xhtml+xml, všechno fungovalo jako po másle. Jak by ne, XHTML je dialekt XML, prohlížeč dokument načte jako XML a jedeme dál... No, nejedeme. Pánové z Microsoftu se totiž rozhodli, že tento typ nebudou podporovat a když pošlete validní XHTML dokument jako text/html (aby se nám chudáček explorereček nezakuckal), evaluace XPath výrazů selhává (celkem logicky -- prohlížeč v tu chvíli neví, že má v rukou validní XML).

Nadhodil jsem svůj problém v google-ajax-discuss (Perform XPath on a document sent as 'text/html'?) a když už jsem se smiřoval s tím, že na XPath můžu zapomenout, objevila se dnes ráno v listu zpráva o tom, že XPath funguje i s text/html, jen je potřeba psát názvy elementů velkými písmeny. Divné, ale je to tak. I když zas ne tak úplně, teď se pro změnu trošku cuká Opera. Chce velkými písmeny i názvy atributů, kdežto IE a Firefox zas v takovém případě odmítají spolupracovat. Ale tenhle problém se dá celkem úspěšně řešit nějakými regulárními výrazy, případně psaním trošku složitějších XPath výrazů (místo @*[name() = 'ahoj'] -- já vím, blbý příklad -- budete muset psát @*[name() = 'ahoj' or name() = 'AHOJ'] a nebo i na tenhle případ vymyslet regulární výraz, který to v případě Opery pořeší, do toho se mi už nechtělo ;)

Asi je vidět, že to není žádné super pevné řešení. Nicméně někdy umí XPath tak efektivně vytáhnout informace z DOMu, že se to IMHO vyplatí i přes takovéto překážky použít.

Nakonec bych poprosil někoho s Konquerorem, připadně dalšími méně rozšířenými prohlížeči, aby navštívili http://tester.danielkvasnicka.net/ajaxslt/ a podělili se tu s námi o výsledek. Já jsem otestoval funkčnost ve Firefoxu 2.0.0.6, Opeře 9.20, IE 6 a Safari 2.0.4

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

stativ avatar 19.10.2007 10:47 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
V konqueroru 3.5.8 to funguje
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
Daniel Kvasnička ml. avatar 19.10.2007 10:50 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
Dobra zprava. Dik.
FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
19.10.2007 13:06 mlz
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
Kq 3.5.7 funguje

http://tester.danielkvasnicka.net/ajaxslt/

Okno:

-----------------------------------

XPath ve vasem prohlizeci funguje!

OK

------------------------------------
19.10.2007 16:35 Radek | skóre: 12
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
Konqueror 3.5.7 - OK

Epiphany 2.14.3 - OK

Opera 9.24(Build 671) - OK
21.10.2007 22:02 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše IE a XML
Pokud chcete pokoušet XML v IE, posílejte mu soubory bez XML prologu (pokud si vystačíte s XML 1.0). Matně si vzpomínám, že to stačilo (možná bylo ještě třeba přejít na obecnější MIME typ text/xml).

Jinak ohledně velikosti písmen tagů je třeba pamatovat, že XML je na velikost písmen citlivé, HTML má pro parsovaná jména citlivost v DTD vypnutou.
22.10.2007 07:25 Non_E | skóre: 24 | blog: hic_sunt_leones | Pardubice
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
www-client/links-2.1_pre28-r1 (gentoo)

Bug in line: if (array[i] === value || (opt_notype && array[i] == value)) {

Missing ';' at the end of statement in: // that were removed from array

Missing ';' at the end of statement in: // function applied to every element of the input array

A tak dále. Asi nemá rád komentáře nebo nevím.
Only Sith deals in absolutes.
22.10.2007 11:53 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Ajaxslt, XPath a content type text/html
předverze 29 a vyšší už nepodporí JS, protože jeho interpret je plný chyb a nikdo mu nerozumí.

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.