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í
×
    včera 21:00 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

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

    Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.

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

    Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    Elon Musk prohrál soudní spor se společností OpenAI, která se podle jeho žaloby odchýlila od původně uváděného cíle vyvíjet umělou inteligenci (AI) ku prospěchu lidstva. Porota včera po necelých dvou hodinách dospěla k jednomyslnému závěru, že Musk žalobu podal příliš pozdě. Musk byl jedním ze spoluzakladatelů společnosti OpenAI, která vznikla v roce 2015 a vyvinula populární chatovací systém ChatGPT. V roce 2018 na svůj post ve vedení

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 10:22 | Nová verze

    Byla vydána nová verze 10.4 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Opraveny jsou zranitelnosti Copy Fail a Dirty Frag. Přibyl nový obraz pro Orange Pi 5B.

    Ladislav Hagara | Komentářů: 0
    včera 07:44 | Zajímavý software

    Pokud je zranitelnost Linuxu v nepoužívaném jaderném modulu, lze ji jednoduše vyřešit zakázáním automatického načítání tohoto konkrétního zranitelného modulu. Projekt ModuleJail si klade za cíl zvýšit bezpečnost Linuxu zakázáním automatického načítání všech nepoužívaných jaderných modulů. Jedná se o skript, který dá všechny nepoužívané jaderné moduly na blacklist (/etc/modprobe.d/modulejail-blacklist.conf).

    Ladislav Hagara | Komentářů: 1
    18.5. 16:11 | Zajímavý článek

    Odborníci z Penn State University zkoumají způsob ukládání informací na lepicí pásku. Principiálně by podle nich bylo možné kombinací odlepení a zpětného přilepení dosáhnout uložení informace, kterou opětovným odlepením dokážou přečíst. Výhodou je, že způsob uložení i přečtení je čistě mechanický. Zde o tom referují ve volně dostupném článku. Zajímavé bude sledovat zda se jim v rámci výzkumu podaří prokázat použitelnost i v jiné než

    … více »
    karkar | Komentářů: 9
    18.5. 13:00 | Zajímavý projekt

    Na GitHubu byl publikován reprodukovatelný návod, jak rozchodit Adobe Lightroom CC na Linuxu a Wine. Návod byl vytvořený pomocí AI Claude Code.

    Ladislav Hagara | Komentářů: 0
    18.5. 12:33 | Humor

    Pokud by někdo potřeboval Wayland kompozitor uvnitř počítačové hry Minecraft, aby mohl zobrazovat okna desktopových aplikací přímo v herním prostředí, může sáhnout po Waylandcraftu. Ukázka na YouTube.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1664 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Předávání hodnot mezi okny v Javascriptu

    13.4.2006 16:38 | Přečteno: 1524× | Jen tak

    Dneska jsem se z blogy rozjel :-D. Ale tohle si prostě zapsat musím, protože mi řešení zabralo poměrně dlouho a navíc nejsem kovaný v Javascriptu (respektive v rozdílech mezi jednotlivými prohlížeči).

    O co jde. Máme okno A, ze kterého otevřeme (pomocí JS) okno B. V okně B je jistý dlouhý seznam a okno B poskytuje funkce jako filtrování, hledání, řazení a podobné. Když je uživatel spokojen a vybere nějaký prvek, je třeba nějakým způsobem vrátit jeho identifikaci zpět do okna A. Celá webová aplikace bude nejčastěji používána v MSIE, ale vývoj probíhá na Firefoxu (WebDeveloper, HTML Validator, Tamper Data a spol jen tak nenahradíš), proto je nezbytné, aby uvedená věc fungovala i v něm (jinak se odřízneme :-D).

    Máme soubor caller.html, který poskutuje funkci update, kterou volá funkce z druhého souboru dialog.html. Hned prvním problémem je otevření modálního dialogu, kterouž funkci poskytuje jen IE. Mozilla based prohlížeče používají parametr modal=yes funce window.open(). Takže se nám kód hezky rozdvojí (a čert ví, jak tohle zvládnou ostatní prohlížeče).

    function modalWin(url) {
        if (window.showModalDialog) { // IE
            window.showModalDialog(url,window,
                    "dialogWidth:255px;dialogHeight:250px");
        }
        else { // non IE ... zalomeno
            window.open(url,window,
    'height=255,width=250,toolbar=no,directories=no,
    status=no,menubar=no,scrollbars=no,
    resizable=no,modal=yes');
        }
    }
    
    function update(text) {
        document.getElementById("spam").innerHTML = text;
    }
    

    Zpětná cesta byla horší, protože většina návodů řešila situaci pouze v jediném správném prohlížeči, který neumí korektně pracovat s png obrázky. Nakonec jsem našel nápovědu na w3schools.com a po pár pokusech ze mě vypadlo tohle

    function getInfo() {
        var win;
        if (window.dialogArguments) {
            win = window.dialogArguments;
        }
        else {
            win = window.opener;
        }
        win.update('Zmeneny text!');
    }
    

    Laskavý čtenář si potřebný HTML kód jistě doplní sám :-).

           

    Hodnocení: 33 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    Filda avatar 13.4.2006 16:57 Filda | nejmenší velkoměsto
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Tohle jsem taky onehdá potřeboval. Vyřešený to mám v podstatě stejně, ale já to mám lepší :), okno se mi otevirá uprostřed obrazovky
    
            widthVal = 350;
            heightVal = 280;          
            leftVal = (screen.width / 2) - (widthVal/2);
            topVal = (screen.height / 2) - (heightVal/2);                
           
            date = document.getElementsByName(input2Fill)[0].value;
            window.open(url, title, "width="+widthVal+", height="+heightVal+", left="+leftVal+", top="+topVal);
    
    
    Komix na Hovno
    13.4.2006 16:59 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Doufám, že tvůj kód _byl pod Public Domain ;-)
    When your hammer is C++, everything begins to look like a thumb.
    Filda avatar 14.4.2006 08:46 Filda | nejmenší velkoměsto
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    je to pod FPL (Fildova Public License) a ta obsahuje jednu jedinou větu: Dělej si s tim co chceš, hlavně moc nevotravuj :)
    Komix na Hovno
    13.4.2006 17:13 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    len ma zaujima, preco vsetci tomu co nezvlada png stale vravia prehliadac :-(
    13.4.2006 19:24 pantera | skóre: 17 | blog: Bl0g
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    diiiky :) v tomto jsem se chtel rypat v sobotu :o) Usetril jsi mi hafo prace s hledanim :)
    14.4.2006 09:20 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu

    Pokud vím, abyste mohl v Mozille&spol. použít volbu modal=yes, musí mít skript privilegium UniversalBrowserWrite, jinak to nefunguje, a toto privilegium si může vyžádat pouze podepsaný skript.

    Jak jste se s tím popral? Jde to nějakým lokálním nastavením prohlížeče obejít, nebo je nutno absolvovat kalvárii s podpisem skriptu? Mi by se to pro nějaké interní firemní aplikace občas taky hodilo, ale námaha na vytváření podepsaných skriptů mi přijde pořád ještě větší, než potencionální efekt...

    14.4.2006 09:47 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Přiznávám, že tohle jsem ani nevěděl (opravdu nejsem kovaný v Javascriptu). Protože většina uživatelů jede na IE, pouze vývoj je na ff, tak to asi řešit nebudeme.
    When your hammer is C++, everything begins to look like a thumb.
    14.4.2006 10:36 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu

    Aha.

    No tak se hlavně ve FF nedivte, že i přes nastavení modal=yes se to okno nechová modálně, chyba není ve vašem skriptu :-). Pro účely ladění můžete "skoromodální" chování nasimulovat volbou dialog=yes.

    14.4.2006 10:31 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Nedávno mi přišla pozvánka do Google Page Creatoru a tam jsou modální dialogy řešeny jako HTML divy. Jelikož se neřadím mezi JavaScriptové profesionály, nepřišel jsem na to, "jak to v tom Googlu sakra dělají", ale našel jsem http://www.wingo.com/dialogbox/index.html. Snad někomu pomůže.
    Math, as Barbie says, is hard.
    14.4.2006 10:45 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu

    Nasimulovat modální dialog DIVem asi není zas až takový problém, víceméně to celé obsloužíte CSSkem.

    Nicméně by mě zajímalo, pokud to někdo tuší, jak přes JS přinutit stránku, aby si něco stáhla ze serveru.

    Napadá mě například takováto situace: Mám selectbox se seznamem čehosi (kategorie výrobku), vyberu kategorii a chci, aby se onchange naplnil jiný selectbox, řekněme s typem výrobku. To samozřejmě lze ošetřit, ale já bych navíc chtěl, aby si ten handler události onchange teprve sám ze serveru přečetl, co má vlastně zobrazit podle předchozího výběru, nechcu mít "předčtené" všechny varianty.

    V zásadě bych chtěl udělat něco jakoby prvek.innerHTML="http://...". Samozřejmě je možná jakákoliv jiná varianta řešení, ten JS si může požádat o cokoliv jakkoliv a server mu taky může doručit cokoliv jakkoliv, takže je mi celkem jedno, jak přesně se to udělá, jde mi jenom o to, jestli to vůbec jde udělat.

    Cíleně jsem sice nepátral, ale na první ani druhý pohled jsem nic podobného nenašel.

    14.4.2006 10:59 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Problémem je právě ta modalita - vyžaduje to už nejen povrchní znalost JS;-). Hledáte asi AJAX? Doporučuji pak knihovnu prototype.
    Math, as Barbie says, is hard.
    14.4.2006 11:15 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu

    Jo, to je přesně ono :-)

    window.XMLHttpRequest je to, co jsem potřeboval slyšet, že tomu říkají AJAX a vedou kolem toho hafo řečí, to je mi šumafuck. Díky.

    14.4.2006 11:16 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    modalita? hmm, z mojich povrchnych znalosti by som to riesil dvoma divmi a nastavovanim z-index
    prvy by obsahoval data stranky
    druhy by obsahoval div s modalnym (fuj, ako niekto moze pouzivat modalne okna??) oknom, bol by nad prvym, transparentny, width/height 100%, cursor: wait; a v nom by bol div s oknom.
    14.4.2006 12:04 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Předávání hodnot mezi okny v Javascriptu
    Tohle řeší vzhled (a to si nejsem jistý tou průhledností a její podporou v prohlížečích, navíc je zbytečná). Horší je to s přesměrováním veškerého vstupu do onoho divu. Není to tedy neřešitelné, ale je potřeba mít určité znalosti JavaScriptu.
    Math, as Barbie says, is hard.

    Založit nové vláknoNahoru

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