Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#36 used as offset, casting to integer (36) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#37 used as offset, casting to integer (37) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: JavaScript 2.0
ТвойWeb » Обо всем понемногу » Поговорим обо всем » JavaScript 2.0

Страниц (2): [1] 2 »
 

1. Systemnik - 08 Апреля, 2008 - 04:22:07 - перейти к сообщению
И так пока не вышел.. эта волшебная версия яваскрипта...
после общения с фураксом) я стал задумыватся о всяких DOM моделях итд..
и теперь подробно по Денни Гудману изучаю.. все секреты языка..
и стараюсь их понять.. в 5 издании книги довольно часто упоминаются фразы о будушей новой версии.. как вы думаете.. как лучше сохранить совместимость.. давайте немножко поговорим на эту тему Улыбка И вообще у ктого каая литература по яваскрпту есть итд.. Подмигивание
2. Furax - 08 Апреля, 2008 - 05:26:40 - перейти к сообщению
Совместимость ты не сохранишь- заявлено, что обратной совместимости с JS1.5 не будет. Разумеется, многие концепции, такие как DOM2, останутся, но может измениться синтаксис и т. п. В принципе, есть какая-то информация о JS2.0, который Mozillовские продукты вроде даже частично понимают (здесь за последние 4 года ничего не изменилось - как делали тихо, почти что для себя, так и делают), но заморачиваться этим на данном этапе я бы не стал. Речь тогда шла не о совместимости на уровне синтаксиса, а на уровне концепций, понятий, с которыми оперирует язык.
3. Systemnik - 08 Апреля, 2008 - 08:19:22 - перейти к сообщению
Да, ты вполне прав на уровне совместимости проблем думаю не возникнет..
но все такие некоторые неполадочки или недочеты появятся.. вот например..
помниш я писал скрипт который динамически меняет текст в абзаце..
пр помощи innerHTML так вот ты меня наругал Улыбка И правильно сделал! Язычок Ведь лучше (хоть и сложнее) напсать так:
CODE:
<html>
<head>
</head>
<body>
<p id="paragraph"></p>
<script>
function ajax()
{
var text=document.createTextNode("Привет!");
document.getElementById("paragraph").appendChild(text);
}
</script>
<a href="#" onClick="ajax()">Напечатать</a>
</body>
</html>

хотя ведь можно напсать проше.. как думаеш.. будет ли подобные отличия в JavaScript 2.0.. Растерялся
4. KROt - 08 Апреля, 2008 - 09:11:17 - перейти к сообщению
Systemnik, не подскажишь название той книги Гудмана? Интересно было бы взглянуть на неё...
5. Systemnik - 08 Апреля, 2008 - 09:21:20 - перейти к сообщению
JavaScript Библия пользователя Авторы Денни Гудман и Майкл Моррисон
6. KROt - 08 Апреля, 2008 - 09:32:06 - перейти к сообщению
А... Такая у меня есть... Правда 4-е издание... 2003 года Хм
7. Furax - 08 Апреля, 2008 - 09:47:52 - перейти к сообщению
Systemnik
Не знаю. Читай первоисточники - предварительные (!) спецификации господа из Mozilla уже выложили. Просто DOM - это штука куда более высокоуровневая, чем прямая правка HTML, и с моей точки зрения - идеологически более правильная...
8. KROt - 08 Апреля, 2008 - 10:18:03 - перейти к сообщению
У DOM есть свои преимущества и недостатки, также, как и у innerHTML.
Преимущества innerHTML:
Нет особой заморочки с созданием текстовых и прочих элементов в DOM-модели документа.

Недостаток innerHTML:
Все обработчики событий самоуничтожаются при записи данных через innerHTML.

Преимущества appendChild:
Сохранение всех обработчиков событий, меньше конфликтов с разными браузерами.

Главный недостаток:
Нельзя просто взять кусок html-кода, например
CODE:
var txt = "<div id='objid'>Бла-бла-бла</div>"

и вставить его в другой блок через appendChild. Придётся писать что-то типа
CODE:

var bl = document.createElement("div");
bl.id = "objid";
document.getElementById("anotherid").appendChild(bl);

А что если мне нужно вставлять теги не одного уровня вложности, а нескольких? Придётся писать функцию разбора строки на элементы, разбора этих элементов на составляющие, типа названия тега и пр...
Так где же она, золотая середина?
9. Furax - 08 Апреля, 2008 - 20:39:45 - перейти к сообщению
KROt
А золотая середина в том, что в Web 2.0 уже нет никакой необходимости делать теги по пять раз вложенными. CSS всё сделает за Тебя.

Кстати, это никак не DOM2:
CODE:
bl.id = "objid";
Лучше использовать setAttribute.

И потом, задача конкретно JavaScriptа - это ну никак не генерация страницы с нуля (разве что небольшая модификация), но расцвечивание, проверка данных и т. д.

А вертеть на JS HTML-парсер - ИМХО верх маразма.
10. KROt - 09 Апреля, 2008 - 06:35:19 - перейти к сообщению
Почему сразу маразм? Очень часто бывает необходимым поменять немаленькие объёмы страницы, например через Ajax.

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0373]     [ Gzipped ]