Autor Zpráva
Darker
Profil
Vypisuji chybové hlášky z formuláře v absolutně pozicovaném prostředí (můj nápad to nebyl!) a nechci, aby se překrývaly s tím co tam je.
Jak by jste to řešili univerzálně?
Joker
Profil
Cílem je nějaké konkrétní pořadí překrytí (tj. pokud se prvky překrývají, má být nahoře nějaký konkrétní), nebo docílit takového rozmístění prvků na stránce, aby se nepřekrývaly?

To první jde řešit nastavením z-index v CSS.
Obecné řešení toho druhého by myslím bylo komplikované.
1Pupik1989
Profil
Já bych udělal jeden absolutně pozicovaný div a do něj bych akorát přidával divy s textem. Pokud teda jsem pochopil správně, že to má být něco jako chybová konzole.
Darker
Profil
Ani jeden to bohužel nepochopil správně. Zkusím to vzít z jiného konce.
Vemte si funkci, která mi na zadané souřednice X a Y vrátí pole objektů všech elementů, které se tam nachází a zároveň jsou absolutně pozicované.
Witiko
Profil
Darker:
Takovou funkci si můžeme představit, ale svědčí o neefektivním návrhu kódu. Co si místo zjišťování všech elementů na daných souřadnicích univerzálně, což bude trochu neefektivní, dané elementy evidovat již při jejich pozicování na dané souřadnice?

Pokud bys chtěl zjistit veškeré elementy na daných souřadnicích, tak myslím, že by bylo možné si cyklem najít veškeré elementy s absolutním pozicováním, poté nalézt jejich pozici (nejlépe pomocí getBoundingClientRect se zpětnou podporou pro starší prohlížeče) a zkontrolovat, jestli se vyhledávané souřadice nachází mezi "touto pozicí" a "touto pozicí + offsetWidth / Height elementu", pakliže ano, byl by element na daných souřadnicích. document.elementFromPoint není řešením, jelikož navrací pouze nejvýše posazený element.

Pokud by šlo o hledání elementů pod myší, tak by se dost možná dalo zplodit něco efektivnějšího pomocí eventů a probublávání.
Darker
Profil
Witiko:
document.elementFromPoint není řešením
Stačí mi zjistit, jestli tam je jeden jediný.
Jinak máš pravdu, přesně tahle koncepce mě napadla a přišla mi dost komplikovaná. Doufal jsem, že existuje právě nějaký ten document.elementFromPoint.
Witiko
Profil
Darker:
Příliš se zaměřuješ na druhý odstavec toho, co jsem psal. Hledat elementy můžeš v cizím dokumentu. V dokumentu, který si sám generuješ by to nemělo být třeba.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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