Сообщение от ваый
|
Мне кажется, что мы говорим о разных вещах. Как мне может помочь textarea в данном случае?
|
Цитата:
|
Why <textarea>?
The <textarea> element has the nice property of not radically messing up the formatting of its innerHTML.
- This stability of <textarea>'s innerHTML is important because JST syntax allows you to place control flow tags (like if/elseif/for) in all sorts of odd places, such as even -inside- HTML tags. For example:
<option value="${country.name}" {if country.name == currCountry}selected{/if}>
- Just as with many server-side template languages, the JST syntax is not true HTML/XHTML/XML. Hence, the beauty of using <textarea> elements to hold our JST templates.
|
http://code.google.com/p/trimpath/wi...criptTemplates
другие шаблонизаторы тоже бывает textarea используют
Сообщение от ваый
|
Это да, но думаю, что для передачи параметров как JSON строки, это можно предусмотреть.
|
зависит от параметров, для {lang: 'ru'} скорее всего и предусматривать ничего не надо
Сообщение от monolithed
|
когда-то читал, что код может отработать некорректно (вроде бы в книге Д. Гудмана, но точно не помню). Не знаю на сколько эта информация устарела, но для меня это стало табу, да и не было никогда необходимости.
|
да, это аргумент, но не табу
Сообщение от monolithed
|
Меня в этом вопросе возмущает, то почему они не выбрали один из уже существующих подходов (не считая решения с пространствами имен).
|
ну там же много людей, может и причины какие-то были
Сообщение от monolithed
|
В любом случае распарсивать так код, на мой взгляд, полное извращенство.
|
в общем случае, возможно. В частном случае - может пригодиться. А вообще,
извращаться экспериментировать полезно, можно чего-нибудь придумать
Сообщение от B@rmaley.e><e
|
Выглядит сомнительно. Эвент-хандлеры, в общем-то, не рассчитаны на возвращение значений.
|
и тем не менее, довольно известная практика
Сообщение от monolithed
|
У элементов тоже ну не может не быть прототипов, но вот IE10- доказывает обратное...
|
а можно подробнее про ie 10?
Сообщение от ваый
|
Ну тот факт, что этот вариант использует google, уже внушает доверие, разве нет?
|
ну есть немного
Сообщение от ваый
|
К тому же такой метод уже лет десять как используют, опять же по причине простоты и кроссбраузерности. Вот, кстати, нарыл доказательство, кто не верит http://feather.elektrum.org/book/src.html
|
откуда такие выводы? Ну можно предположить, что статья написана году в 2005-ом. Но почему ты решил, что это распространенная практика? Да и доказывать ты как-то косвенно пытаешься. Давай попробуем напрямую:
<!doctype html>
<html>
<body>
<script src="1.js"></script>
<script src="2.js"></script>
<script src="3.js"></script>
<script>
d([a, b, document.body.innerHTML]);
function d(s){
document.body.appendChild(
document.createTextNode(s)
);
document.body.appendChild(
document.createElement('br')
);
}
</script>
</body>
</html>
1.js:
var a = 1;
2.js:
var scripts = document.getElementsByTagName('script');
var script = scripts[scripts.length-1];
script.parentNode.insertBefore(document.createTextNode('test'), script);
3.js:
var b = 2;
не нашел браузера, в котором это не работает. Почему это плохой тест (почему такой метод доступа к тегу скрипт может не работать) и как его можно улучшить?
p.s. вообще, я в последнее время подумал, что слишком сильно себя ограничиваю. Надо больше экспериментировать.