Javascript.RU

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

Как обратиться к элементу, который был добавлен после полной загрузки DOM?
Допустим у меня есть такой файл:
<!DOCTYPE html>
<html>
	<head>
		<script src='http://code.jquery.com/jquery-1.7.1.min.js'></script>
	</head>
	<body>
		<div id='test'>Кликни на меня!</div>
		<div id='block'></div>
		<div id='block2'></div>
		
		<script>
			$(document).ready(function(){
				$('#test').click(function(){
					$('#block').html("<div id='test2'>А теперь на меня!</div>");
				});
				
				$('#test2').click(function(){
					$('#block2').html('Все завершено!');
				});
			});
		</script>
	</body>
</html>


Первый слушатель работает, а второй уже нет. Как же решить эту проблему без функций, типа onclick='javascript:someFunc();'?
Ответить с цитированием
  #2 (permalink)  
Старый 02.01.2012, 16:26
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

<!DOCTYPE html>
<html>
    <head>
        <script src='http://code.jquery.com/jquery-1.7.1.min.js'></script>
    </head>
    <body>
        <div id='test'>Кликни на меня!</div>
        <div id='block'></div>
        <div id='block2'></div>
         
        <script>
            $(document).ready(function(){
                $('#test').click(function(){
                    $('#block').html("<div id='test2'>А теперь на меня!</div>").children().click(function(){
                        $('#block2').html('Все завершено!');
                    });
                });
            });
        </script>
    </body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 02.01.2012, 16:39
Новичок на форуме
Отправить личное сообщение для LysoSutriN Посмотреть профиль Найти все сообщения от LysoSutriN
 
Регистрация: 02.01.2012
Сообщений: 5

Я упростил код, если я добавляю множество кода после клика. Как обратиться к определенному элементу?
Ответить с цитированием
  #4 (permalink)  
Старый 02.01.2012, 16:41
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

$('#block').html("<div id='test2'>А теперь на меня!</div>").find("нужный нам селектор").click
Ответить с цитированием
  #5 (permalink)  
Старый 02.01.2012, 16:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

devote,
LysoSutriN,

А live ?
<!DOCTYPE html>
<html>
	<head>
		<script src='http://code.jquery.com/jquery-1.7.1.min.js'></script>
	</head>
	<body>
		<div id='test'>Кликни на меня!</div>
		<div id='block'></div>
		<div id='block2'></div>

		<script>
			$(document).ready(function(){
				$('#test').click(function(){
					$('#block').html("<div id='test2'>А теперь на меня!</div>");
				});

				$('#test2').live("click",function(){
					$('#block2').html('Все завершено!');
				});
			});
		</script>
	</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 02.01.2012, 16:59
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

рони,
ну я не юзаю джуквери, поэтому не в курсе подобных тонкостей.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как удалить элемент который идет после элемента .form? FRIE jQuery 2 03.06.2011 14:35
как обратиться элементу по индексу DonLino jQuery 5 13.07.2010 20:16
Не могу обратиться к элементам div, после того как они получены через $.ajax igsavenko jQuery 1 31.05.2010 17:53
Как дождаться ПОЛНОЙ загрузки страницы? arma Events/DOM/Window 7 04.11.2009 20:05
Действие после полной загрузки Воитель Общие вопросы Javascript 4 02.10.2008 18:20