Autor Zpráva
bohous
Profil *
Dobrý den,
rád bych poprosil o radu a názor. Napadlo mě, že bych vytvořil jednoduchý template engine v javascriptu. Nesestkal se někdo s tímto problém a nevíte jestli existuje na toto téma nějaká zajímavá publikace nebo článek z které by se dala pochopit tato problematika?Popřípadě co je nutné k takového práci vědět pokud bych se do ní chtěl pustit?Předem děkuji za káždý názor a radu.
Witiko
Profil
Chcete tvořit javascriptový WYSIWYG editor?

V tom případě vás asi bohužel zklamu. Jediná možnost na vytvoření textového pole s možností změny formátování a vkládání obrázků je co já vím přepnutí část dokumentu, která je nastylovaná, aby vypadala jako textové pole, do design módu. Poté si berete / editujete innerHTML atribut daného blokového elementu / iframe. Je však dlužno dodat, že html generované prohlížečem bude často dost nepěkné. Prakticky jediná věc, kterou může váš javascript dělat / snažit se o, je validace a pročišťování kódu generovaného prohlížečem, jinak bohužel je v tomto případě programátor bez jakéhokoliv nízkoúrovňového přístupu.

Případně poprosím o opravení mého tvrzení, rád se nechám vyvést z omylu.
Chamurappi
Profil
Reaguji na bohouse:
Mohl bys upřesnit, co myslíš template enginem?


Reaguji na Witika:
Prakticky jediná věc, kterou může váš javascript dělat / snažit se o, je validace a pročišťování kódu generovaného prohlížečem
JavaScript může ten kód sestavit z DOMu. Nemusí tedy čistit innerHTML od všeho nepořádku, může si sestavit vlastní stromovou strukturu, jen a pouze s tím, co v kódu chce.
Witiko
Profil
Re: Chamurappi
Pravda, jenže bohužel nepořádek se neváže jen na innerHTML. Prohlížeč může zdvojovat tagy, nebo je nelogicky či přespříliš nadšeně vnořovat. A protože je převod uživatelského vstupu do DOMu zcela v rukou prohlížeče, bude v každém případě třeba tu strukturu buď simplifikovat a část elementů / jejich atributů zcela vynechat, nebo pomocí určitých algorytmů pročistit a do ústojné míry standardizovat výstup svého scriptu v rozdílných prohlížečích. Případně oboje, zábava pro celou rodinu.

Pořád ale nevíme, jestli jde o to, co myslí bohous svým template engine, nebo jestli má na mysli nějaké ucelené řešení pro vytváření webových stránek pomocí template.

http://en.wikipedia.org/wiki/Template_engine_(web)
bohous
Profil *
Prosím o menší stepení, hned jak se dozvím více, napíšu podrobnosti. Děkuji za pochopení a děkuji za názory.

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