CJ největší affiliate síť v ČR, 40+ inzerentů CPC,CPL,CPO model. Začni vydělávat teď
Stránka 1 z 2 1 2 PosledníPoslední
Zobrazují se odpovědi 1 až 30 z 33

JSko - otevírání okna

  1. Zdravím,
    mám problém na který nemůžu přijít. Potřeboval bych otevřít přes normální HTML odkaz (<a href="stranka.html">stránka</a>) stránku, která bude mít rozměry 500x400px. Jedná se mě o to, že nemůžu, bohužel vážně nemůžu, napsat do odkazu žádný script, který by mě stránku otevřel menší.

    Hledám to už půl dne, ale nemůžu najít žádné řešení, které by fungovalo na všechny prohlížeče a bylo použito až při načítání výsledné stránky....


    ... Díky
    ME

  2. Happy Robot :]

    Co se právě děje na Webtrhu?

  3. Proč to chceš otevřít v novém okně? Lepší varianta je do stránky dynamicky vložit nastylovaný div nebo otevřít stránku do nového tabu. Pop-up oknem můžeš uživatele leda tak nas*at.

  4. jedná se o rezervaci.. máš fotku na které máš stolečky. Po kliku na stolek je potřeba otevřít okno s rezervačním formulářem tak, aby se fotka nezavřela
    .... .není to můj výmysl, ... prost jsem to tak dostal zadané, tak to tak dělám

  5. Tohle by mělo fungovat:

    Kód:
    function encodeUrl(url) {
         if (url.indexOf('?') > 0) {
            var
                encodedParams = '?',
                parts = url.split('?'),
                params = parts[1].split('&');
             for(var i = 0; i < params.length; i++)
                if (i)
                    encodedParams += '&';
                if (params[i].indexOf('=') > 0) {
                    p = params[i].split('=');
                    encodedParams += (p[0] + '=' + escape(encodeURI(p[1])));
                }
                else
                    encodedParams += params[i];
            url = parts[0] + encodedParams;
        }
        return url;
    }
    
    function popup(url, name, width, height) {
        var popup = '';
        name = name.replace(/\/|\-|\./gi, '').replace(/\s/g, '');
        if (!popup.closed && popup.location)
            popup.location.href = encodeUrl(url);
        else {
            popup = window.open(
                encodeUrl(url),
                name,
                [
                    'location=no',
                    'scrollbars=yes',
                    'resizable=yes',
                    'toolbar=no',
                    'menubar=no',
                    'width=' + width,
                    'height=' + height
                ].join(', ')
            );
            if (!popup.opener)
                popup.opener = self;
        }
        if (window.focus)
            popup.focus();
    }
    
    popup('http://www.webtrh.cz', 'Webtrh', 500, 400);

  6. tohle ale je vloženo v tom odkazu ne??? já to potřebuji vložit až do toho okna, který se otevře.... takže do toho finálního okna-rezervačního

    tohle mě připadne, jako by to byl obyčejný rozepsaný odkaz

  7. tohle ale je vloženo v tom odkazu ne??? já to potřebuji vložit až do toho okna, který se otevře.... takže do toho finálního okna-rezervačního

    tohle mě připadne, jako by to byl obyčejný rozepsaný odkaz
    To jsem nějak nepobral, ale pokud chceš okno otevřít po klepnutí na odkaz, tak mu jednoduše dej atribut onclick:

    Kód:
    <a
        href="#"
        onclick="popup('http://www.webtrh.cz', 'Webtrh', 500, 400);"
    >
        Webtrh
    </a>

  8. Ok.. vysvětlím ještě jednou a znovu :-)
    vytvářím prezentaci pro jednu restauraci. Mám fotku lokálu, na které jsou vidět hezky stolečky. Mám vytvořenou bitmapu - takže po kliku na stůl se může otevřít další okno. Tím pádem mám na fotce konkrétně 32 stolů. Potřebuji, aby když uživatel klikne na stul, otevřelo se mu okno. To okno nemůže být přes celou stránku - vypadalo by to pěkně blbě - ale musí být menší (500x400px). Bohužel, do té bitmapy - fotky se stolky - nemůžu umístit žádný JSkový prvek (jako je onclick). Proto potřebuji mít normální odkaz <a href....></a> ve kterém budu mít jenom čisté HTML. Odkaz mě bude směřovat na okno, které už může mít JSko (takže třeba parametr onload,...). V tom novém okně potřebuji až zadat velikost.


    takže závěr: velikost okna bude zadána až v samotném novém okně, nikoliv v odkazu

  9. Já tě pořád nějak nechápu. Proč by odkaz nemohl mít atributy? A jak chceš potom docílit toho, že se po klepnutí na odkaz provede nějaká akce? Nejlepší by bylo dát sem odkaz na živou ukázku.

  10. Protože ta fotka je dělána a skládána programem, který umí pobrat pouze HTML.... v JSku mu vadí uvozovky "";
    Očekával jsem řešení, u kterého bude moct se měnit velikost okna až v samotném okně

  11. Z tebe to leze jak z chlupatý deky :-). Atributy prvků sice JSOU součástí html, ale pokud s nimi ten program neumí pracovat, tak by se to dalo řešit třeba pomocí delegování:

    Kód:
    // Kód pro jQuery, do hlavičky si vlož skript "http://code.jquery.com/jquery-1.7.1.min.js"
    
    $(function() {
        $('selektor prvku, který je nadřazený všem odkazům').on('click', 'a', function() {
            popup($(this).attr('href'), 'blabla', 500, 400);
        });
    });
    PS: Když mu vadí uvozovky, tak co tam dělá href="stranka.html"?

  12. ale tohle zase musím nacpat do té stránky, ze které se odkazuji že jo???...... což opět u mě nejde. Prostě to nejde a nemá cenu vymejšlet metody přes JS, jQuery, .......
    ... potřebuji řešení, které je možné nacpat do finální stránky :(

    touhle cestou jsem si už prošel .... a fakt to nejde :(

  13. potřebuji řešení, které je možné nacpat do finální stránky :(
    To si neumím dost dobře představit...

    a fakt to nejde :(
    Hoď sem odkaz na tu stránku a uvidíš, že jde všechno ;-).

  14. ten projekt je zatím tajný.... takže nemůžu :(
    ale vytvořit si 2 stránky, kde na jedné budeš mít jenom čistý odkaz... a s druhou budeš otevírat zvládneš ne? :-)

  15. ale vytvořit si 2 stránky, kde na jedné budeš mít jenom čistý odkaz... a s druhou budeš otevírat zvládneš ne? :-)
    No to zvládnu - dokonce jsem ti popsal dvě varianty řešení, ale podle tebe to údajně nejde. Pokud je ten projekt tak tajný, tak buď dej dohromady aspoň malou ukázku, aby bylo jasné, o co ti přesně jde, jinak nemá význam v téhle diskusi pokračovat.

  16. z odkazu: http://webadesign.cz/rezervace/index.html (po kliku na stolek)
    se má otevřít stránka: http://webadesign.cz/rezervace/rezerace.php .... (v tomto okně potřebuji pomocí něčeho nastavit velikost)

  17. Vždyť se celou dobu bavíme o odkazech a ty přitom používáš obrázkovou mapu :-). Takhle by měla vypadat upravená stránka z prvního odkazu, aby se to chovalo přesně jak popisuješ:

    Kód:
    <html>
        <head>
            <script
                src="http://code.jquery.com/jquery-1.7.1.min.js"
                type="text/javascript"
            ></script>
            <script type="text/javascript">
                function encodeUrl(url) {
                     if (url.indexOf('?') > 0) {
                        var
                            encodedParams = '?',
                            parts = url.split('?'),
                            params = parts[1].split('&');
                         for(var i = 0; i < params.length; i++)
                            if (i)
                                encodedParams += '&';
                            if (params[i].indexOf('=') > 0) {
                                p = params[i].split('=');
                                encodedParams += (p[0] + '=' + escape(encodeURI(p[1])));
                            }
                            else
                                encodedParams += params[i];
                        url = parts[0] + encodedParams;
                    }
                    return url;
                }
    
                function popup(url, name, width, height) {
                    var popup = '';
                    name = name.replace(/\/|\-|\./gi, '').replace(/\s/g, '');
                    if (!popup.closed && popup.location)
                        popup.location.href = encodeUrl(url);
                    else {
                        popup = window.open(
                            encodeUrl(url),
                            name,
                            [
                                'location=no',
                                'scrollbars=yes',
                                'resizable=yes',
                                'toolbar=no',
                                'menubar=no',
                                'width=' + width,
                                'height=' + height
                            ].join(', ')
                        );
                        if (!popup.opener)
                            popup.opener = self;
                    }
                    if (window.focus)
                        popup.focus();
                }
                
                $(function() {
                    $('area').on('click', function() {
                        popup($(this).attr('href'), 'aaaa', 500, 400);
                        return false;
                    });
                });
            </script>
        </head>
        <body>
            <map name="ctverecky">
                <area href="rezerace.php" target="_blank" shape="rect" coords="40, 150, 200, 300">
            </map>
            <img src="obrazek.jpg" usemap="#ctverecky" width="300" height="300">
        </body>
    </html>

  18. a já ti celou dobu říkám, že na tu první stránku... na ten index.html nemůžu, opakuji nemůžu sáhnout!

  19. No tak to řeknu rovnou, ne? :-) To tvoje "u mě to nejde" celou dobu chápu jako "u mě to nefunguje" a ne jako "nesmím upravit index.html"... Z jakého důvodu do něj nemůžeš zasahovat?

  20. jinak by to šlo udělat elegantněji:
    <a href="javascript:void(0);" onClick="window.open('/rezervace/rezerace.php?id_stolku=10','rezervace','height=500 ,width=500,left=100, top=100,resizable=no,scrollbars=no,toolbar=no,loca tion=no,directories=no,status=no,menubar=no, ');">odkaz.. mapa..cokoliv .. </a>

    ---------- Příspěvek doplněn 03.12.2011 v 23:12 ----------

    Už si konečně rozumíme ... :-D to je super :-D
    nemůžu do něho zasahovat, protože stránka index.html je generována nějakým programem, který to zobrazuje až přímo na webu. Je to generované nějak přes JSko... každopádně mám zadáno, že do toho sahat nemůžu :(

  21. jinak by to šlo udělat elegantněji
    - S tím taky nemusíš v některých prohlížečích pochodit...
    - Proč zase odkaz, když tam máš mapu?

    No a hlavně by mě zajímalo, z jakého důvodu nemůžeš upravovat ten index?

  22. právě na ty prohlížeče jsem narazil.... jinak bych použil něco jako
    function resizeWindow()
    {
    window.resizeTo(500,300)
    }
    -----------------------------------------
    Pro nemůžu sahat do indexu?? protože se to tahá z více serverů přes JSko... atd, atd..... nemám k tomu ani přístup, a nedostanu ho. Už jsem se ptal :(

  23. právě na ty prohlížeče jsem narazil....
    Potom je ta elegance tak trochu k ničemu ;-)

    nemám k tomu ani přístup, a nedostanu ho. Už jsem se ptal :(
    Tak tohle podle mě nemá řešení. Asi ti nezbývá než přesvědčit zadavatele, že fakt neumíš čarovat - ať ti dá přístup k indexu nebo ať změní zadání.

  24. to jako že v dnešním digitálním světě neexistuje žádné řešení na zmenšení okna, přímo v okně samotném? :-D :-D

  25. Zjevně ne. No a hlavně ze stránky otevřené do nového tabu popup okno neuděláš...

    Ještě by to teoreticky šlo celkem krkolomně udělat tak, že po otevření cílové stránky z ní otevřeš sebe samu v okně a tab zavřeš pomocí window.close():

    Kód:
    popup(window.location.href, 'abcd', 500, 400);
    window.close();
    akorát se obávám, že to nebude fungovat všude(nezkoušel jsem to).

  26. nemusí to být zrovna popup okno... může to být jakékoliv okno, jenom s nastavenými rozměry :-)

    ---------- Příspěvek doplněn 03.12.2011 v 23:43 ----------

    tu prasárnu jsem už zkoušel .... nefunguje to všude ... :( :( ... ale máme stejnou myšlenku :-)

  27. No tak v té otevřené stránce použij nějaké JS okno, jak jsem říkal už na začátku. Jestli se ti s tím nechce dělat, tak použij třeba dialog z jQuery UI. Je sice trochu škaredej, ale máš to na pár řádků.

  28. ale jQuerry mě nenastaví velikost okna jako takového celého, ale pouze nějaký box/modul na stránce :(

  29. Pokud nevyhovuje ani tohle řešení, tak to už si budeš muset promluvit se zadavatelem, že má nereálné požadavky.

  30. Je to boj .... ještě mě napadla možnost to udělat přes flash .. formulář :-D

  31. A nebylo by lepší to udělat celé přes flash? O_o

Stránka 1 z 2 1 2 PosledníPoslední
Hostujeme u Server powered by TELE3