Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.09.2011, 11:05
Новичок на форуме
Отправить личное сообщение для StrSprut Посмотреть профиль Найти все сообщения от StrSprut
 
Регистрация: 19.09.2011
Сообщений: 9

Новый элемент отсутствует в DOM модели
Грузится страничка, создается DOM модель. Потом через jquery создается новый элемент которого нет в созданной DOM модели, следовательно когда на него ставишь какое нибудь событие его не нахид и не обрабатывает. Как сделать что DOM модель обновлялась или как правильно создавать новый элемент что бы он появлялся в DOM модели?(желательно через jquery)

var i=0;
function addPlace(){
cena = $("#cena").val();
name = $("#name").val();
i += 1;
$("#infoplaces").append('<div id="'+ i +'" class="getshowplaces">'+name + ' ' + cena +'</div>');
};

$(".getshowplaces").hover(function(){
alert('sdfsd');
});
Ответить с цитированием
  #2 (permalink)  
Старый 19.09.2011, 11:17
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Метод hover по идеи принимает два аргумента, а не один.
в остальном вроде всё верно, обновлять нечего не надо.
Кстати cena и name логично бы локальными сделать, а то они у тебя глобальные.

Ещё, я в твоём примере не вижу чтобы addPlace вызывался перед добавлением обработчиков событий
ну хотя бы так должно быть. А то не ясно как это всё работает )
var i=0;	
function addPlace(){
       var cena = $("#cena").val(),
           name = $("#name").val();

       i += 1;	
       $("#infoplaces").append('<div id="'+ i +'" class="getshowplaces">'+name + ' ' + cena +'</div>');
};

addPlace();// вызываем функцию создающую обьект на который в дальнейшем повесим обработчик

$(".getshowplaces").hover(function(){
      alert('пришли');
},function(){
      alert("ушли")
});
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 19.09.2011 в 11:30.
Ответить с цитированием
  #3 (permalink)  
Старый 19.09.2011, 11:33
Новичок на форуме
Отправить личное сообщение для StrSprut Посмотреть профиль Найти все сообщения от StrSprut
 
Регистрация: 19.09.2011
Сообщений: 9

Не известно сколько будет добавленно эллементов, они должны добавляться по нажатию по ссылке
<a href="javascript:void(0)" onClick="javascript:addPlace()" >add</a>
это у меня выше
добавил addPlace(); - теперь просто добавляет пустой элемент при создании странички
<div id="1" class="getshowplaces"> </div>
и по наведению ничего опять не происходит...

если я ручками прописываю элемент то hover срабатывает
Ответить с цитированием
  #4 (permalink)  
Старый 19.09.2011, 11:40
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Всё замечательно. Но когда hover добавляется то ? Он же не может до создания элементов добавляться. Я бы добавлял его прямо в функции, после создания каждого элемента
var i=0;	
function addPlace(){
       var cena = $("#cena").val(),
           name = $("#name").val();

       i += 1;	
       $("#infoplaces").append('<div id="'+ i +'" class="getshowplaces">'+name + ' ' + cena +'</div>');
       // возможно лучше вешать на id чем на класс, но мы пока на class повесим
       $(".getshowplaces").hover(function(){
           alert('пришли');
       },function(){
           alert("ушли")
       });
};
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 19.09.2011 в 11:44.
Ответить с цитированием
  #5 (permalink)  
Старый 19.09.2011, 11:50
Новичок на форуме
Отправить личное сообщение для StrSprut Посмотреть профиль Найти все сообщения от StrSprut
 
Регистрация: 19.09.2011
Сообщений: 9

заработало, большое спасибо.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в браузерах реализуются функции DOM (например createElement) iamme Общие вопросы Javascript 7 02.09.2011 19:26
Как узнать находится ли DOM элемент в области видимости? phgrey Общие вопросы Javascript 4 22.03.2011 18:05
Как удалить элемент из дерева DOM dummer jQuery 13 16.01.2011 15:19
Как добавить элемент в XML через DOM используя PHP? bayah Серверные языки и технологии 6 11.08.2010 12:33
Как узнать содержит ли DOM определенный элемент Ruslan Events/DOM/Window 8 12.03.2010 21:02