Estou usando o jQuery v.1.7.1, onde o método .live () é aparentemente obsoleto.
O problema que estou tendo é que, ao carregar dinamicamente o html em um elemento usando:
$('#parent').load("http://...");
Se eu tentar adicionar um evento de clique depois, ele não registrará o evento usando um destes métodos:
$('#parent').click(function() ...);
ou
// according to documentation this should be used instead of .live()
$('#child').on('click', function() ...);
Qual é a maneira correta de obter essa funcionalidade? Apenas parece funcionar com .live () para mim, mas eu não deveria estar usando esse método. Observe que #child é um elemento carregado dinamicamente.
Obrigado.
.live()
ele mostra como reescrever os usos existentes de .live()
usar .delegate()
ou .on()
(dependendo se você está na versão 1.7+ ou não). Observe, porém, que se você adicionar um manipulador com .click()
"depois", como você mencionou, ou seja, depois de carregar elementos dinamicamente, ele deverá funcionar - o único problema é tentar atribuir .click()
antes de carregar elementos dinamicamente.