Autor | Zpráva | ||
---|---|---|---|
bohumil Profil * |
#1 · Zasláno: 4. 2. 2007, 00:28:44
Ahoj,
pomocí javascriptu jsem si vytvoril "dialogove" okenko, který obsahuje textove pole. Toto dialogove okno je umisteno do stredu stranky, respektive cast puvodni stranky zakryva. Potrebuji, aby vsechny html prvky na strance byly neaktivni (na odkazy by neslo kliknout, ani vyplnit nejake formulare, ci stisknout tlacitko). Aktivni by byly prvky pouze v tom dialogovem okne. Nevite, jak deaktivovat vsechny html prvky na strance? Dik |
||
Dero Profil |
#2 · Zasláno: 4. 2. 2007, 01:17:34
bohumil: Co zkusit ono dialogové okno vykreslit na absolutně pozicovanou plochu se z-indexem větším než mají všechny ostatní pozicované prvky na stránce a s rozměry width i height rovnými 100%? Tím by se daly zablokovat všechny akce myší.
|
||
bohumil Profil * |
#3 · Zasláno: 4. 2. 2007, 11:48:13
no jenomze timpadem by byo dialogove okno pres celou obrazovku, a to nechci. Chtel jsem udelat neco podobneho jako je lightbox ci jeho odvozeniny, ktere misto obrazku umi zobrazovat html. Tedy aby se html prvky zneaktivněli a zároveň, aby ta stránka zešedla. Celé řešení lightboxu respektive thickboxu je ale příliš nabobtnalé. Mě by stačilo, kdyby to fungovalo pod IE. No asi to nějak rychle udělat nejde. Kdybyste věděli o nějaké hotovém řešení typu lightbox s co nejmenším počtem řádků, napište mi. Dik
|
||
zero0x Profil |
#4 · Zasláno: 4. 2. 2007, 19:16:51
tak to si daj pod to okno nejaky dalsi div - prekrytie - ktory ma rozmery 100% a ma nejaku alpha - cize je polopriehladny. presne tak to riesi aj lightbox.
je to jednoduche, len sa treba trochu pohrat s css a jscriptom. |
||
Dero Profil |
#5 · Zasláno: 4. 2. 2007, 19:18:40
bohumil: Přesně tak, jak říká zero0x jsem to i myslel. Dialogové okno (samostatná vrstva) NA další samostatnou (poloprůhlednou, průhlednou) vrstvu s height, width 100%.
|
||
bohumil Profil * |
#6 · Zasláno: 4. 2. 2007, 20:14:46
Diky. je to super reseni.
Jeste jednu vec bych potreboval: mam nejaky div a u nej definovanou udalost onmousemove. Pri najeti s mysi pres ten div se mi ma zmenit pozadi divu. Tomu se tak i deje, ale jenom, kdyz prejedu pred nejaky text v tom divu. Nefunguje to, kdyz najedu na prazdne misto, kde neni text, ale div tam preci jen uz je. Zajimave je, ze kdyz tomu divu nastavim border napriklad na dashed, tak uz to funguje bez problemu - at najedu na jakekoliv misto v divu, pozadu se zmeni. Nevite, jak zajistit, aby to fungovalo i bez toho nastaveneho borderu? |
||
Leo Profil |
#7 · Zasláno: 4. 2. 2007, 20:19:23
"Nefunguje to, kdyz najedu na prazdne misto, kde neni text, ale div tam preci jen uz je. Zajimave je, ze kdyz tomu divu nastavim border napriklad na dashed, tak uz to funguje bez problemu - at najedu na jakekoliv misto v divu, pozadu se zmeni."
V IE? Leo |
||
bohumil Profil * |
#8 · Zasláno: 4. 2. 2007, 20:21:08
Presne tak - konkretne v IE7
|
||
Dero Profil |
#9 · Zasláno: 4. 2. 2007, 20:29:57
bohumil: IE mívá problémy s prázdným místem bloků, dá se najít souvislost s interním příznakem has-layout. Je třeba IE přinutit, aby si musel ověřit souřadnice všech čtyř rohů bloku. Toho se dá dosáhnout několika různými metodami, rozhodně z hlavy nevypotím všechny.
1) nastavit width DIVu na libovolnou hodnotu jinou než auto 2) nastavit height DIVu na libovolnou hodnotu jinou než auto (v quirku je ideální height: 1px;) 3) floatovat prvek vlevo nebo vpravo 4) absolutně takový prvek pozicovat 5) nastavit vlastnost zoom: 1 (pozor, nevalidní, ale jinak ideální řešení) 6) nastavit libovolný aplikovaný (tedy odlišný než none a 0px) border ... atd. Určitě by se dalo přijít na další triggery. Já používám často rozměry nebo vlastnost zoom, o validitu mi totiž nejde. |
||
bohumil Profil * |
#10 · Zasláno: 4. 2. 2007, 21:41:08
Diky. Problem vyresen.
Bylo to ale trochu slozitejsi. Mel jsem totiz dva divy vedle sebe:jeden float left, u praveho divu float nebyl nastaven - a to prave zpusobovalo ten problem, proc se pri najeti na ten levy div menilo pozadi jen nekdy. Po nastaveni floatu na right u toho druheho divu, to vypada, ze to funguje. |
||
Leo Profil |
#11 · Zasláno: 5. 2. 2007, 09:11:18
"Bylo to ale trochu slozitejsi. Mel jsem totiz dva divy vedle sebe:jeden float left, u praveho divu float nebyl nastaven - a to prave zpusobovalo ten problem, proc se pri najeti na ten levy div menilo pozadi jen nekdy. Po nastaveni floatu na right u toho druheho divu, to vypada, ze to funguje."
Nejaky minimalni kod, kde to blbne/blblo by nebyl? Leo |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0