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 19:55 | IT novinky

    Americký výrobce čipů Intel propustí 15 procent zaměstnanců (en), do konce roku by jich v podniku mělo pracovat zhruba 75.000. Firma se potýká s výrobními problémy a opouští také miliardový plán na výstavbu továrny v Německu a Polsku.

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

    MDN (Wikipedie), dnes MDN Web Docs, původně Mozilla Developer Network, slaví 20 let. V říjnu 2004 byl ukončen provoz serveru Netscape DevEdge, který byl hlavním zdrojem dokumentace k webovým prohlížečům Netscape a k webovým technologiím obecně. Mozille se po jednáních s AOL povedlo dokumenty z Netscape DevEdge zachránit a 23. července 2005 byl spuštěn MDC (Mozilla Developer Center). Ten byl v roce 2010 přejmenován na MDN.

    Ladislav Hagara | Komentářů: 0
    včera 14:55 | Nová verze

    Wayback byl vydán ve verzi 0.1. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Nová verze

    Byla vydána nová verze 6.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově se lze k síti Tor připojit pomocí mostu WebTunnel. Tor Browser byl povýšen na verzi 14.5.5. Thunderbird na verzi 128.12.0. Další změny v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    24.7. 14:33 | IT novinky

    Meta představila prototyp náramku, který snímá elektrickou aktivity svalů (povrchová elektromyografie, EMG) a umožňuje jemnými gesty ruky a prstů ovládat počítač nebo různá zařízení. Získané datové sady emg2qwerty a emg2pose jsou open source.

    Ladislav Hagara | Komentářů: 0
    24.7. 14:22 | Nová verze

    Byla vydána (𝕏) nová verze 25.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 25.7 je Visionary Viper. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 0
    24.7. 13:33 | IT novinky

    Před 40 lety, 23. července 1985, společnost Commodore představila první počítač Amiga. Jednalo se o počítač "Amiga od Commodore", jenž byl později pojmenován Amiga 1000. Mělo se jednat o přímou konkurenci počítače Apple Macintosh uvedeného na trh v lednu 1984.

    Ladislav Hagara | Komentářů: 2
    24.7. 06:00 | IT novinky

    T‑Mobile USA ve spolupráci se Starlinkem spustil službu T-Satellite. Uživatelé služby mohou v odlehlých oblastech bez mobilního signálu aktuálně využívat satelitní síť s více než 650 satelity pro posílání a příjem zpráv, sdílení polohy, posílání zpráv na 911 a příjem upozornění, posílání obrázků a krátkých hlasových zpráv pomocí aplikace Zprávy Google. V plánu jsou také satelitní data.

    Ladislav Hagara | Komentářů: 9
    23.7. 21:55 | Komunita

    Společnost Proxmox Server Solutions stojící za virtualizační platformou Proxmox Virtual Environment věnovala 10 000 eur nadaci The Perl and Raku Foundation (TPRF).

    Ladislav Hagara | Komentářů: 2
    23.7. 21:22 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.65 svobodného multiplatformního webového serveru Apache (httpd). Řešena je bezpečnostní chyba CVE-2025-54090.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (29%)
     (25%)
     (5%)
     (5%)
     (5%)
     (2%)
     (2%)
     (28%)
    Celkem 129 hlasů
     Komentářů: 16, poslední včera 15:31
    Rozcestník

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

    13.4.2006 16:38 | Přečteno: 1470× | 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.