Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 12.10.2012, 14:43
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

Все - нельзя, есть запретные, но почти все - можно.
Однако:
1. document - адски большой.
2. В document полно саморекурсивных ссылок(firstChild <-> parentNode итд)
3. document и child'ы - не просто объекты - это Node объекты, соответственно если в строку превратить с оговорками(см пункт 2) ещё можно, то обратно уже никак(ну точнее без извращений никак - оно того не стоит).

А так FireBug примерно это и делает при построении модели DOM.

У меня даже где-то валяется древняя наговнокоженная функция сериализации любых объектов.
__________________
29375, 35

Последний раз редактировалось Aetae, 12.10.2012 в 14:52.
Ответить с цитированием
  #12 (permalink)  
Старый 12.10.2012, 14:44
Аватар для Maxmaxmахimus
司会
Отправить личное сообщение для Maxmaxmахimus Посмотреть профиль Найти все сообщения от Maxmaxmахimus
 
Регистрация: 29.02.2012
Сообщений: 198

Нет ты понимаешь не правильно, DOM это модель документа, которая через javascript доступка как API в виде обьекта document // то что находится в обьекте document это НЕ обычные обьекты javascript.
Элементы DOM просто ПРЕДСТАВЛЕНЫ в виде обьектов javascript и похожи на них, но на самом деле это API к DOM которая находится в движке браузера.

Я думаю Так понятнее?

Последний раз редактировалось Maxmaxmахimus, 12.10.2012 в 14:50.
Ответить с цитированием
  #13 (permalink)  
Старый 12.10.2012, 14:54
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

да, так более понятно спасибо

итак -
JS может полностью сформировать с нуля хтмл-документ любой сложности
при этом JS может использовать JSON-данные для создания узлов документа
соответственно "модель" документа может быть представлена в виде JS-объекта
Ответить с цитированием
  #14 (permalink)  
Старый 12.10.2012, 14:55
Аватар для Maxmaxmахimus
司会
Отправить личное сообщение для Maxmaxmахimus Посмотреть профиль Найти все сообщения от Maxmaxmахimus
 
Регистрация: 29.02.2012
Сообщений: 198

да, ты можешь считать данные о DOM через этот API доступ к которому осуществляется через document / Превратить эти данные в любой удобный для тебя формат, а потом используя этот же API (обьект document) наполнить DOM этими данными.
Ответить с цитированием
  #15 (permalink)  
Старый 12.10.2012, 15:02
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

в принципе мне не надо считывать любой документ, то есть парсить его
я размышляю о генерации с нуля хтмл-документа

то есть можно же создавая или удаляя или перемещая с помощью JS узлы, писать все эти изменения в "Json-модель" хтмл-документа


скажите пожалуйста - как в общих чертах происходит в обычных фреймворках редактирование хтмл-документа в браузере - то есть создание новых узлов, так чтобы все нововведения записывались в БД

Последний раз редактировалось macdack, 12.10.2012 в 15:07.
Ответить с цитированием
  #16 (permalink)  
Старый 12.10.2012, 15:06
Аватар для Maxmaxmахimus
司会
Отправить личное сообщение для Maxmaxmахimus Посмотреть профиль Найти все сообщения от Maxmaxmахimus
 
Регистрация: 29.02.2012
Сообщений: 198

var div  = document.createElement('div');
div.className = 'myClass';
div.id = 'myId';

// засунем созданный элемент (через api) в DOM
document.body.appendChild( div ); 

// БАБАХ API метод appendChild добавил в DOM элемент DIV




в jQuery напрмиер так

$('<div>', {className:'myClass', id: 'myId'}).appendTo( 'body' );


или еще проще

$( ' < div class="myClass" id="myId" > ' ).appendTo( 'body' );

Последний раз редактировалось Maxmaxmахimus, 12.10.2012 в 15:08.
Ответить с цитированием
  #17 (permalink)  
Старый 12.10.2012, 15:20
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

Только чтоб заблуждений не возникло: jquery делает тоже самое, что в первом примере просто внутри себя, для удобства использования.

P.S. Некоторые шаблонизаторы построены на json, в котором содеждится описание нужных элементов.
__________________
29375, 35
Ответить с цитированием
  #18 (permalink)  
Старый 12.10.2012, 15:27
Аватар для Maxmaxmахimus
司会
Отправить личное сообщение для Maxmaxmахimus Посмотреть профиль Найти все сообщения от Maxmaxmахimus
 
Регистрация: 29.02.2012
Сообщений: 198

кстати да, какая цель то у тебя вообще? ты хочешь придумать какой то формат чтобы присылать сервером данные о РАЗМЕТКЕ а яваскрипт бы наполнял ими DOM ??
Ответить с цитированием
  #19 (permalink)  
Старый 12.10.2012, 15:35
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

о возможном применении я уже написал
подробнее сказать нечего

какбе я грызу этот гранит и хочу глубоко понимать а непросто делать как все ))
ну и сразу же думаю о своем фреймворке

например мне неохота заморачиваться реляционными БД - мне достаточно плоских файлов на ПХП
Ответить с цитированием
  #20 (permalink)  
Старый 12.10.2012, 16:00
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от macdack
правильно ли я понимаю что хтмл-документ это объекты DOM и следовательно объекты JS-программы
откуда такое предположение? dom это не объект языка и JS предоставляет API для доступа к DOM
не глянул что это было уже ранее.
Сообщение от macdack
какбе я грызу этот гранит и хочу глубоко понимать а непросто делать как все ))
ну и сразу же думаю о своем фреймворке
как хватил, может сначала подумать о базовых знания, чем явить миру очередной "шедевр"?

Последний раз редактировалось dmitriymar, 12.10.2012 в 16:03.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как проверить загружены ли все картинки браузером Aderba jQuery 13 29.05.2014 14:18
Как узнать все ID? OklickSpb Общие вопросы Javascript 1 15.09.2012 02:56
Как удалить все пустые элементы UL smashercosmo Events/DOM/Window 13 25.02.2009 09:03
как узнать html код документа, подгруженного в iframe alexKniaz Events/DOM/Window 7 03.12.2008 12:37
как разпринтить все существующие переменные scuter Общие вопросы Javascript 11 22.04.2008 14:53