Starší komentáře ke článku: Ohleduplné otevírání nových oken s JavaScriptem

Zpět na článek | Úvodní stránka Interval.cz

Avatar

Autor komentáře: emu

Datum vložení: 20.4.2005 8:59:46

osobne pouzivam <a href="http://neco.cz/" rel="_popup"> a pak na onload stranky zavolam funkci, ktera projde vsechny linky v dokumentu a podle obsahu parametru rel se rozhodne co udela...

Avatar

Autor komentáře: jay

Datum vložení: 20.4.2005 13:37:40

Za svoj cas na internetu som si vybudoval uprimnu nenavist voci akemukolvek popupu (alebo otvaraniu v novom okne) a stranka, ktora mi nejaky popup vyhodi len velmi tazko dosiahne aby som ju hned nezavrel. Kvalitne stranky sa zaobidu aj bez otvarania novych okien a ak uz naozaj treba oddelit obsah do noveho bloku tak sa da pouzit napriklad XMLHttpRequest a vytvorit plavajuci blok na stranke.

Avatar

Autor komentáře: Pavel Růžička

Datum vložení: 20.4.2005 14:39:33

Například obrázky v internetovém obchodě nebo prostě fotogalerii si raději prohlédnu vždy v novém okně, a pokud je webová aplikace dobře udělaná, rád ponechám na ní, aby sama otevřela nové okno, které tak může být přizpůsobené danému obrázku. Myslím, že bychom s moralistickým zakazováním otvírání nových oken neměli být papežštější než papež, ať každý tvůrce sám zváží, kdy se opravdu hodí otvírat nové okno - tento článek se snaží ukázat jak to udělat tak, aby odkazy byly vždy funkční. Máte pravdu, že kvalitní stránky se obejdou bez otvírání nových oken - vždyt otevření obrázku v novém přizpůsobeném okně je také jen drobné kosmetika. Kde bychom ale dnes byli, kdybychom vycházeli z předpokladu, že kvalitní jídlo se dá jíst i bez příboru? :)

Avatar

Autor komentáře: vfb

Datum vložení: 21.4.2005 7:27:28

otvirani novych oken pro gallerií je zhovadilost, pokud neni uzivatel blbec, dokáže si sám stanovit jak se má odkaz otevřít a jedině kde to lze tolerovat, jsou odkazy mimo site, kde se pohybuji a nastavování parametrů novému oknu je taky něco co mně může vytočit, většinou to znamená jen to, že nevidím obrázek celý a okno si ani nemůžu pořádně zvětšit, nejčastěji následuje odchod jinam

Avatar

Autor komentáře: Rada

Datum vložení: 21.4.2005 11:08:00

No jo, ale co když uživatel blbec je? Do nového okna je dobré otevřít třeba nějaké pokyny nebo nápovědu jak vyplnit nějaký formulář. Ať je jedno okno s formulářem a druhé s nápovědou, co kam vyplnit. A nenechte se unést. Podle mě (mých zkušeností) jen tak 1/4 uživatelů ví jak ve svém prohlížeči otevřít nové okno.

Avatar

Autor komentáře: Robik

Datum vložení: 5.5.2006 10:20:49

Zhovadilost je blbě udělaná stránka, nikoliv popup řešená galerie. 90% lidí na internetu patří k naprostým internetovým nevzdělancům (nechci nikoho urážet, každý prostě vyniká v jiném oboru). Pokud jste měl na mysli otevírání obrázku v témže okně, což mi jinak ve většině případů připadá docela nepraktické pro neznalého uživatele a i neestetické, záleží velmi na provedení a přehlednosti. Velikou výhodou popup je to, že neztrácíte původní obsah stránky a tím i kontext, ve kterém byl váš zvětšený obrázek zasazen. Představte si, že budete chtít číst kontext a zároveň se občas mrknout třeba na zvětšeninu nějakého technického výkresu (příklad...). Co je efektivnější: Mačkat tlačítka zpět a vpřed a pokaždé čekat na nové načtení stránky, přičemž pokaždé ztratíte kontext, protože posuvník se vždy přenese na začátek stránky (vím, že to s tím posuvníkem lze vyřešit, ale teď to neřeším) anebo použít jednoduše a pohodlně ALT+TAB pro přepnutí do jiného okna? Je to případ od případu a já proti popup absolutně nic nemám... Ba naopak. Jen chci říci, že slova jako "blbec" nebo "zhovadilost" absolutně nejsou na místě. Radím vám pro příště si vše dvakrát, či lépe třikrát rozmyslet, než začnete kolem sebe plivat oheň.

Avatar

Autor komentáře: Pavel Řebíček

Datum vložení: 26.4.2005 10:32:07

Naprosto souhlasím... zkuste se podívat na tento link: http://www.vltava2000.cz/autodrahy/goodsdetail.asp?strGoodsID=CAR-20320 zde řeším otevírání obrázků do nového okna a zákazníkům to velice vyhovuje...

Avatar

Autor komentáře: Pavel Růžička

Datum vložení: 26.4.2005 14:34:17

Bohužel váš příklad je špatným příkladem - bez javascriptu je kompletně nefunkční, uživatel ani nemá možnost si sám zvolit, že chce otevřít obrázek v novém okně. Je mi líto, ale vaše obrázky v iframu jsou příkladem toho nejhoršího provedení, jaké snad může být: zbytečný iframe, absence odkazu (je to pouze obrázek s přiřazeným onclick), není vidět, kam odkaz směřuje, bez javascriptu nelze použít... Zkuste vaši aplikaci upravit podle popisu v článku - určitě se k zákazníkům, kterým to velice vyhovuje, přidají i ti, kteří dosud o tom, že tam máte nějaký náhled, ani nevěděli, protože vaše provedení jim ani nedávalo tušit, že tam nějaký náhled je.

Avatar

Autor komentáře: Mat

Datum vložení: 20.4.2005 22:18:43

Tak tebe nerozumiem - nacitam stranku, ktora obsahuje kopu informacii a ja si chcem zobrazit nejaky detail... mam si prepisat obrazovku detailom a vratit sa spet a cakat 5 minut, alebo si otvorit mensie okno bokom a vidim obidve obrazovky rychlo ? Nespravaj sa tak, akoby vsetci mali gigove rychlosti...

Avatar

Autor komentáře: Otas

Datum vložení: 20.4.2005 13:51:17

Nevím jak uděla otevření popup okna po zavření stránek. Jedná se o dotazník. Použil jsem funkci onunload, ale ta reaguje při každé změně. Tzn. při každém odkazu ze stránky. Dále mě napadlo to nějak ošetřit třeba cookie, nebo něčím jiným. Dále třeba frame, ale ten nemohu použít. Prosím poraďte někdo.

Avatar

Autor komentáře: Tomáš Tintěra

Datum vložení: 20.4.2005 14:44:39

Jsme to taky řešili. Dokonce to i fungovalo. Ale při testování jsme usoudili, že pokud někdo okno zavírá, tak se s naší stránkou prostě nehodlá dál bavit. A nemá cenu něco otevírat.

Avatar

Autor komentáře: Otas

Datum vložení: 20.4.2005 16:23:21

To je dobrý, dík za radu. Je tady někdo další, kdo by mi pomohl ??? Please.

Avatar

Autor komentáře: Jan Cinert

Datum vložení: 20.4.2005 16:45:31

Kazde okno ma vlastnost closed. Muzes do udalosti onunload zaviraneho okna priradit funkci, ktera obsahuje toto if (window.closed){window.open("...dotaznik...")}

Avatar

Autor komentáře: Otas

Datum vložení: 20.4.2005 16:50:54

Má tam být true, ale nevím, zda to má vliv na to, že okno kde mám unonload není otevřené javascriptem open window.

Avatar

Autor komentáře: Lukas Mach

Datum vložení: 20.4.2005 17:49:10

Clanek jsem jeste necetl, ale nova okna (treba u zminenych galerii) casto otviram tak, ze jim nehodim http adresu, ze ktere by se meli nacist, ale HTML kod vpisu primo pres javascript do noveho okna: function openPhoto(href) { var h = window.open(href, "_blank", "width=780, height=585, left=40, top=80, scrollbars=yes, resizable=yes, toolbar=no, location=no, directories=no, menubar=no"); h.document.write( '<html> <head> <style>body { margin: 5px; padding: 0; ... a tak dal ... </body></html>'); return !h; }

Avatar

Autor komentáře: Mat

Datum vložení: 20.4.2005 22:20:45

tento clanok sa mi paci... jedna "laicka" otazka - ako v tomto pripade otvorit okno mensie - kde zadam rozmer ? dakujem...

Avatar

Autor komentáře: Pavel Růžička

Datum vložení: 21.4.2005 11:30:20

Projděte si předchozí články uvedené na konci článku - v nich najdete kompletní popis metody window.open, tedy i jaké parametry je možné zadávat pro otvírání nového okna.

Avatar

Autor komentáře: petrib

Datum vložení: 24.8.2005 13:24:20

ano v predchozim clanku je popsane zadani rozmeru otviraneho okna, na pevno v parametrech (napr: ...width=640, height=640,...). narazim na laickou neznalost spravne syntaxe pri predavani parametru funkce, kdyz chci pouzit jednu funkci pro ruzne velke obrazky function Otevri_okno_xy(x,y) { msg = window.open('', 'nove_okno', 'toolbar=no, menubar=no, location=no, directories=no, scrollbars=no, resizable=yes, status=no, width=x, height=y, top=0, left=0') } s volanim <a href="img.jpg" target="nove_okno" onClick="Otevri_okno_xy(768,1024);"><img src="img_tn.jpg" height=70 width=70 border=1></a> a pri testu v IE6 to vyhazuje velikost posledne zavreneho okna :/ . dik za radu

Avatar

Autor komentáře: js

Datum vložení: 23.4.2005 13:01:56

Mýlím se, nebo uvedený příklad nefunguje na spravne v nove verzi Opery? Resp. popup a preklikavani funguje, ale jakmile se okno jednou zavre, funkce (alespoň to tak vypadá) vrací false. Podle zkoušení existuje objekt myTWin, ale jako by neměl vlastnost .closed zdravím, js

Avatar

Autor komentáře: Fred

Datum vložení: 29.5.2005 20:15:45

V Opeře 8 nefunguje spousta věcí, zkuste starší Operu 7.5 a ne tenhle populistický nedodělek. I když z rozšířením tabexetension to ve FF nebude fungovat taky. Ten článek vyšel před rokem, takže odpovídá své době. Osobně bych to udělal takhle function hop(url){window.open(url,'okno','width=400,height=500,resizable=yes')} function init(){ //var kde=document.getElementById('kde'); //pokud je to třeba aplikovat jen na určité odkazy na stránce zde např. na hrefy v divu s id=kde //var hrefy=kde.getElementsByTagName('a'); var hrefy=document.getElementsByTagName('a'); //pokud je to třeba aplikovat jen na určité odkazy na stránce tenhle řádek smazat a odkomentovat ty dva řádky výše for(i=0,j=0;i<hrefy.length;i++){ hrefy[i].onclick=function(){hop(this.href);return false;} }} function addEvent(obj,evType,fn){ if(obj.addEventListener){obj.addEventListener(evType,fn,true);return true;} else if(obj.attachEvent){var r=obj.attachEvent("on"+evType,fn);return r;} else{return false;} } addEvent(window,'load',init); //addEvent:thx http://www.scottandrew.com/weblog/articles/cbs-events

Avatar

Autor komentáře: Kret33n

Datum vložení: 11.6.2005 2:49:00

Heh, co je to modre prerusovane podtrzeni? ... je to uplne hrozny ... nehlede na to ze napr. ubere posledni JEDEN znak a nahradi jej "trojteckou" :-( kdo tohle vymyslel???

Avatar

Autor komentáře: Vývojka

Datum vložení: 24.8.2005 14:18:37

Mám MS IE 6 s SP2 a povypínaná blokování. Díky za brzkou odezvu.

Avatar

Autor komentáře: Vývojka

Datum vložení: 29.9.2005 13:19:03

I když jsem učinil vše, co je popsáno v "Změny funkčnosti systému Microsoft Windows XP s aktualizací Service Pack 2 (Část 5: Vylepšené zabezpečení při procházení webu)" na http://www.microsoft.com/technet/prodtechnol/winxppro/cs/maintain/sp2brows.mspx, tj. "Z pohledu vývojářů webů má funkce blokování automaticky otevíraných oken vliv na fungování oken otevíraných z webů, například pomocí metod window.open() a showHelp(). Pro vývojáře aplikací je k dispozici nové uživatelské rozhraní s názvem INewWindowManager.", nepomohlo to. Mj. pomůže tedy INewWindowManager?! Viz http://search.microsoft.com/search/results.aspx?qu=INewWindowManager+Interface&View=msdn&st=b&c=4&s=1&swc=4

Avatar

Autor komentáře: houba

Datum vložení: 29.9.2005 23:45:15

K čemu by mělo co pomoct? O čem mluvíš člověče? Nešlo by prostě napsat, v čem máš problém?

Avatar

Autor komentáře: Vývojka

Datum vložení: 30.9.2005 9:53:52

Internet Explorer Popup Manager - Developer Implications http://msdn.microsoft.com/security/productinfo/XPSP2/securebrowsing/popup_devimp.aspx Z toho příkladu na výše uvedené URL mi to nefunguje v obou případech (kliknutí na tlačítka), tj. ani neotevře další okno, ani nic nezahlásí.

Avatar

Autor komentáře: Vývojka

Datum vložení: 24.10.2005 13:40:11

Pomohl mi až článek na http://support.microsoft.com/kb/281679/cs ["Nelze otevřít nové okno aplikace Internet Explorer nebo po klepnutí na odkaz nedojde k žádné akci"]

Avatar

Autor komentáře: MS

Datum vložení: 10.5.2007 16:02:19

Prosím o radu. Já bychom potřeboval opak. Je nějaká možnost jak otevřít nové okno a udržet v něm fokus. T.j. uživatel nemůže pracovat v okně z kterého otevřel nové okno, pokud neudělá nějakou akci v novém okně, nebo jej uzavře. Údajně toto existuje, nějak otevřít okno "modulárně" nebo co, ale nikde jsem se za tím o tom nic nedozvěděl. Vím že to lze viděl jsem to v jednom ekonomickém softu (běžel v MSIE). Předem dík.

Avatar

Autor komentáře: *Jméno:

Datum vložení: 21.2.2008 0:42:58

Modální dialog, fuguje jen v Exploderu. www.jakpsatweb.cz/javascript/priklady/modal-dialog.html

Avatar

Autor komentáře: Jindra

Datum vložení: 19.10.2007 14:37:04

Poradí mi někdo zda lze jednoduše toho new okno (_okno) zavřít z mateřského okna? (např. událostí OnUnload). Tento článek se mi líbil a použil jsem fci window.myTWin pro nějaké náhledy z mateřského okna a potřeboval bych, aby pokud odejdu v mateřském okně jinam, aby se automaticky zavřelo i touto fcí vytvořené dceřinné okno.

Avatar

Autor komentáře: Peťusek

Datum vložení: 13.11.2008 16:45:36

Dobrý den, na stránky jsem si chtěl vložit tento slovníkový box od Merriam-Webstera (kód možno najít též zde: http://tinyurl.com/5zcj8l). Potřebuji jej však trošku pozměnit, aby se mi vyhledávané výrazy otevíraly nikoliv v témže okně, ale v oknech nových, respektive v nových panelech (zejména Firefox, Opera apod.). Můžete mi, prosím, někdo poradit, jak mám tento kratičký kód pozměnit, aby to fungovalo? Předem moc děkuji za jakoukoliv radu! Peťusek ===== kód ===== <!-- Merriam-Webster Searchbox Style 5 --> <script language="Javascript"> function getValue(term){document.location.href = "http://www.merriam-webster.com/dictionary/" + term;} </script> <form name="query" method="get" action="javascript:getValue(document.query.va.value)"> <div style="margin:0;padding:0;border:solid 1px #000000;width:173px;text-align:center;"> <div style="margin:0;padding:0;"> <img src="http://www.merriam-webster.com/images/searchbox/hdr_175x96.gif" width="173" height="65" hspace="0" vspace="0" /> </div> <div style="margin:0;padding:3px;background-color:#FFFFFF;"> <input type="text" align="top" name="va" size="22"> <input type="image" src="http://www.merriam-webster.com/images/searchbox/btn_go_19x18_blue_matte.gif" alt="Go" width="19" height="18" border="0" style="vertical-align:-25%;"> </div> </div> </form>

Avatar

Autor komentáře: Jack06

Datum vložení: 11.2.2009 16:44:45

Co kdybych chtěl, aby každé okno mělo jiné jméno?? Abych měl odkazy a když na nějakej kliknu otevře se mi nové okno, a ne do toho samého jako předtím?? Děkuji

Zpět na článek | Úvodní stránka Interval.cz