Autor Zpráva
Suta
Profil
Prosím o radu někoho, kdo má větší zkušenosti s dynamickými aplikacemi za pomocí javascriptu a ajaxu.

Poslední dva dny řeším obrovské dilema ohledně vytváření a "rušení" objektů v javascriptu. Ve stránkách používám "interaktivní okna", dá se říci totožná jako jsou všechna okna ve windows (lišta, zavírací tlačítko, minimalizace, obsah, buttony ve spodní části okna, s oknem je možné po stránce posouvat atd...)

Problém není v jejich vytvoření, mé dilema je, co má být s objektem (oknem) provedeno po jeho zavření. Moje stávající varianta je tato:

--------------------------------------------------------------------------------------------------

Varianta A:

- Při prvním otevření daného okna (dejme tomu okna "upozornění", tedy lišta s textem upozornění, textovým obsahem a buttony "Zavřít okno" vytvořím objekt (element <div>) a vložím jej do stránky (napozicuji absolutně na střed stránky).

- Při zavření okna objekt neruším, pouze jej skryji stylem display: none.

- Následné otevírání a zavírání stejného okna je pak pouze otázkou změny zobrazení ve stránce (display: block, display: none, atd..)

--------------------------------------------------------------------------------------------------

Varianta B:
(tuto variantu do mě 2 dny tlačí kolega s odůvodněním, že v jiných jazycích je jakýkoliv objekt (v tomto případě objekt typu okno) vždy zrušen a při otevření znovu vytvořen od začátku.

- Při každém vytvoření okna vytvořím objekt od začátku znovu. Při zavření okna jej zruším.

--------------------------------------------------------------------------------------------------

Děsím se toho, že v případě druhé varianty, která je údajně "správná", bych měl např. v situaci, kdy budu desetkrát za sebou zobrazovat naprosto stejné okno, stejného typu, měl tento objekt se všemi potřebnými vnořenými divy (toolbar, obsah, lišty atd..) vytvořit znovu. Když budu 100x během určité doby zobrazovat okno s textem "Tato operace není přípustná", proč bych měl toto okno vždy vytvořit od začátku znovu, když může být "předvytvořeno" a jeho otevření a zavření může být pouze otázku změny stylu?

V situaci, kdy v daném okně budou různé zaškrtávací a rozbalovací nabídky atd..., musel bych v případě druhé varianty (vytvoření objektu od začátku) mít také mechanismus, který při zavření okna uloží všechna aktuální nastavení a při otevření okna bude složitě nastavovat, co kde bylo před jeho zavřením...

Poradí někdo zkušený? Díky moc !
Str4wberry
Profil
Jediná nevýhoda varianty A je v zobrazení bez CSS, ale to podle mě není důvod pro její nezvolení.


Jinak má diskuse vodorovnou čáru [hr]. :–)

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:

0