Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Метод .html и id (https://javascript.ru/forum/jquery/22327-metod-html-i-id.html)

Решатель 15.10.2011 00:02

Метод .html и id
 
Здравствуйте. Возникла неприятная проблема. Вызываю метод html для одного из своих слоёв, меняю там код, добавляю картинку с id="img" например.(все экранирую в синтаксисе ошибки нет).
Пытаюсь получить доступ к картинке
$('#img').click(function(){...})
И обработать событие клика, но не тут то было. Не обрабатывается оно. В чем может быть проблема?(если этот же код вставить в сам код html, то все работает отлично).

Код на всякий случай:
$('.left-side:eq(0)').click(
	function(){
	$('.window').html("<p style=\"float:left; position:relative; left:120px; top:-20px; color:#333; border-bottom:1px solid #666666\">Наши телефоны</p><ul style=\"float:left; left:-30px; position:relative; top:-50px; color:#333;\"> <li>хххххххххххх</li> <li>ххххххх</li><li>хххххххх</li>  <li>хххххххххх</li></ul><img id=\"winclose\" src=\"img/window/cuteball-stop.png\"/>").css({'height':'220px'});
        $('.window-back').fadeIn(500);
	});


	$("#winclose").click(function(){
	$('.window-back').fadeOut(500);
	});

melky 15.10.2011 00:41

назначайте обработчик через live

если так не будет работать - проблема с выводом картинки

Решатель 15.10.2011 17:28

Можете объяснить, почему после вызова .html() - внешний вид страницы меняется как надо, а сам html код при его просмотре остается прежним?

ASerputko 15.10.2011 17:49

так вы просматриваете исходный HTML код, а в браузере видите уже HTML + отработаный Javascript.

Решатель 15.10.2011 18:07

Именно поэтому он не определяет идентификаторов и классов? Ведь чтобы определить их он обращается именно к html-коду.
Как тогда быть?

ASerputko 15.10.2011 18:49

почему ? Должно все работать отлично, что касается ивентов, то на динамически сгенерированую верстку ивенты лучше вешать с помощью .live(), как это сказал melky


Часовой пояс GMT +3, время: 11:42.