Autor Zpráva
quatzael
Profil
V javascriptu mám funkci, která po kliknutí na tlačítko zobrazí div, který je nad ním a stránku přeroluje tak, aby indikátor myši zůstal na tom tlačítku.
Všechno to funguje bezvadně ve všech prohlížečích kromě IE.

Funguje to tak, že ten div má vlastnost position:relative; a display: none; a po kliknutí na to tlačítko se vlastnost změní na display: block;
(ve skutečnosti tam mám funkci .show(), ale to je myslím úplně to samý)

V IE jsem si všiml, že po zobrazení toho divu se mi posouvají nahoru některé jiné naprosto nezávislé elementy (asi o 1 až 2 px), při tom to jsou většinou subelementy jiných elementů, které paradoxně zůstávají úplně nehybné..

Když jsem dal v IE v nástrojích pro vývojáře zobrazit obrysy elementů, bylo vidět, že u některých se nahoru stáhla jenom výška a text v nich třeba zůstal nehybně a jiné se posunuly nahoru celé i s tím textem..

Nevíte někdo co s tím..??
Petr ZZZ
Profil
Předesílám, že JavaScript neovládám, ale pokud nějaký element reaguje na práci s jiným – nemáš tam třeba u více různých elementů totožné ID? Nebo ID v konfliktu s nějakými nativními názvy ze syntaxe jazyka? (Živá ukázka by asi nebyla na závadu.)
quatzael
Profil
Petr ZZZ:
Selektory mám v pořádku. Zkoušel jsem to čistě přímo přes CSS, že jsem dal přímo u toho elementu display: block; a mění to prostě i ty další divy..
Je to divný.. Navíc v ostatních prohlížečích je to úplně ok, tohle se opravdu týká jen IE..

Živou ukázku bohužel dávat nemůžu, protože je to projekt, který nemůže zatím ven.. Doufal jsem, že by tady někdo měl podobnou zkušenost s IE a věděl co a jak..


Petr ZZZ:
Ten problémovej div, kterej se má zobrazit po tom kliknutí obsahuje tabulku, ve který jsou další divy, což asi není úplně správně, ale prostě to pak rozhodí některý jiný divy co jsou taky na stránce a přitom se nachází úplně jinde..


Petr ZZZ:
Prostě to vypadá tak, že samotný zobrazení tohoto divu ovlivňuje to jak budou posunutý jiný divy, který jsou přitom úplně v jiných elementech, který se zase pro změnu vůbec neposouvají..
Petr ZZZ
Profil
To zní jako komplikovaná struktura, nemůžeš ji zjednodušit? U tabulky bývá výchozí rámeček, není třeba problém s tímhle? Nebo s výchozím marginem nějakého bloku (odstavce, tabulky, nadpisu, vím já co tam všechno máš)?

Aby nedošlo k nedorozumění: Já ti asi nepomůžu ani s živou ukázkou, protože nemám potřebnou rutinu, ale někdo zkušenější by ti poradit mohl. Takto je to věštění z koule (křišťálové nebo zakalené, to už je jedno :).

To povídání o živých ukázkách si nastuduj, přesně tvůj problém s živou ukázkou se tam rozebírá :-).
Davex
Profil
quatzael:
Živou ukázku bohužel dávat nemůžu, protože je to projekt, který nemůže zatím ven..
Nechceme vidět celý tvůj supertajný projekt. Chceme vidět živou ukázku problému jen s nejnutnějším množstvím kódu. Nechceme vidět zbytečnosti, které chování neovlivňují.

Petr ZZZ:
Mohli bychom vynaleznout telepatický přenos živých ukázek.
Petr ZZZ
Profil
Davex:
Ano, to by bylo ultimativní řešení, s hojným využitím. Telepatické ukazovátko neboli „telátko“. :)

quatzael:
Všímáš si, že se tady bavíme zčásti mimo vlastní jádro problému, a uvědomuješ si, že někteří potenciální rádci od určitého počtu příspěvků vlákno nerozkliknou, protože je považují za vyřešené?

Dodatek v reakci na ↓ #7:
Jestli sem nechodíš přes sandbox, mohl sis všimnout, že to povídání o živých ukázkách psal Chamurappi :-).
quatzael
Profil
Petr ZZZ:
Já to chápu, ale zrekonstruovat živou ukázku mi dá strašně moc práce.. takže to ještě zkouším nějak vyřešit sám, protože mám pocit, že před tím mi to nedělalo (možná že jsem si toho nevšiml)..

Prostě jsem doufal, že se tady najde nějakej profík jako např. Chamurappi, který většinou hned ví kde je problém i bez živý ukázky..


Zkusím ještě prokombinovat nějaký varianty a když to nepujde tak sestrojím tu živou ukázku.. (já tam mám opravdu hodně věcí takže ta rekonstrukce by mi zabrala několik hodin..)


Petr ZZZ:
Jestli sem nechodíš přes sandbox, mohl sis všimnout, že to povídání o živých ukázkách psal Chamurappi :-).
já sem nechodím přes žádnej sandbox.. já chápu, že je nejrozumější a v některých případech i možná nezbytný hodit sem živou ukázku, ale sestrojit jí by mi zabralo strašně moc času, takže to ještě zkusím sám.. řešení tady samozřejmě napíšu jestli se mi to povede..
quatzael
Profil
Zkoušel jsem různě u těch divů, které reagují na ten zobrazovaný div definovat navíc vlastnosti jako výška, margin apod., ale moc to nefunguje. Zafungovalo to na jeden s tím, že pak začaly reagovat další divy, které byly do té doby nehybné..

Nejspíš je to asi chyba Exploreru a budu muset počkat až vyjde nějaká nová opravená verze.. Kdyby měl ale tady nějakej profík nezištný zájem a chtěl by mi pomoct, tak prosím o email a já bych mu poslal odkaz přímo na ty stránky..

Živou ukázku by asi nemělo stejně smysl dělat, protože se to chová pokaždý jinak i při změně těch nejmenších detailů..
Petr ZZZ
Profil
Zkontroloval sis, jestli se něco nekříží nebo jestli tam nemáš různý počet <div> a </div>?

Kontakt na sebe musíš případně uvést ty, tak žádají pravidla.
quatzael
Profil
ty divy jsem právěže kontroloval, taky mě to napadlo. Měl jsem tam sice chybu, ale bohužel ani po opravení žádná změna..


Petr ZZZ:
Kontakt na sebe musíš případně uvést ty, tak žádají pravidla.

Sorry, těch pravidel je tady nějak moc, nevyznám se v tom..

Můj e-mail: quatzael[zavinač]seznam.cz

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: