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 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 4
    včera 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    včera 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 5
    včera 14:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 5.4.0: "Delší dobu se v Admineru neobjevila žádná závažná chyba, tak jsem nemusel vydávat novou verzi, až počet změn hodně nabobtnal."

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | IT novinky

    V Německu slavnostně uvedli do provozu (en) nejrychlejší počítač v Evropě. Superpočítač Jupiter se nachází ve výzkumném ústavu v Jülichu na západě země, podle německého kancléře Friedricha Merze otevírá nové možnosti pro trénování modelů umělé inteligence (AI) i pro vědecké simulace. Superpočítač Jupiter je nejrychlejší v Evropě a čtvrtý nejrychlejší na světě (TOP500). „Chceme, aby se z Německa stal národ umělé inteligence,“ uvedl na

    … více »
    Ladislav Hagara | Komentářů: 16
    7.9. 04:11 | Komunita

    V Berlíně probíhá konference vývojářů a uživatelů desktopového prostředí KDE Plasma Akademy 2025. Při té příležitosti byla oznámena alfa verze nové linuxové distribuce KDE Linux.

    Ladislav Hagara | Komentářů: 1
    6.9. 17:11 | Nová verze

    Byl vydán Debian 13.1, tj. první opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.12, tj. dvanáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 2
    5.9. 23:44 | IT novinky

    Evropská komise potrestala Google ze skupiny Alphabet pokutou 2,95 miliardy eur (71,9 miliardy Kč) za porušení antimonopolní legislativy. Podle EK, která mimo jiné plní funkci antimonopolního orgánu EU, se Google dopustil protisoutěžních praktik ve svém reklamním byznysu. Google v reakci uvedl, že rozhodnutí považuje za chybné a hodlá se proti němu odvolat. EK ve věci rozhodovala na základě stížnosti Evropské rady vydavatelů. Podle

    … více »
    Ladislav Hagara | Komentářů: 47
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (3%)
     (2%)
    Celkem 157 hlasů
     Komentářů: 11, poslední 4.9. 16:12
    Rozcestník

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

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