Bernardo Vieira Posted May 4, 2013 at 12:59 PM Report #505814 Posted May 4, 2013 at 12:59 PM (edited) olá, desculpem-me se estiver errado mas penso que a area para jQuery é esta bom, o meu problema é o seguinte! eu tenho umas imagens e quero que quando eu clique numa elas troquem de posicoes (até aqui tudo certo) entao, eu tenho um menu, ao clicar na primeira opcao esta nas imagens, quando clico na segunda opcao apaga as imagens e mostra texto (tudo correto) porém, quando eu volto a clicar sobre a primeira opcao do menu, as imagens aparecem mas nao posso selecioná-las...alguém me sabe dizer porque? o codigo é bem básico esse esconde as imagens e mostra o text $("#menucentro").children().remove(); $("#menucentro").html("<p>Nome:</p>"); e esse faz o contrario $("#menucentro").children().remove(); $("#menucentro").html("<img src='gtagirl.png' class='gtagirle' /><img src='gtagirl.png' class='gtagirlc' /><img src='gtagirl.png' class='gtagirld' />"); eu sei que nem precisava disso "$("#menucentro").children().remove();" porque o .html por si só já subestitui, mas achei que devia usar! obrigado desde já Edited May 4, 2013 at 01:01 PM by Bernardo Vieira
Paulo Cabral Posted May 4, 2013 at 01:38 PM Report #505816 Posted May 4, 2013 at 01:38 PM envés de usares o remove usa o .show() e o .hide(); para ocultares e mostres as imagens ...
Bernardo Vieira Posted May 4, 2013 at 04:32 PM Author Report #505823 Posted May 4, 2013 at 04:32 PM sim, eu pensei nisso, mas imagina que eu quero que ao iniciar a pagina carregue o texto e so depois ao selecionar a segunda opcao do menu é que vejo as imagens! entao para isso primeiro tenho de carregar as imagens, ocultar e so depois é que mostro e volto a ocultar se quiser. eu achei melhor trocar isso! sei la. ideia minha
Paulo Cabral Posted May 4, 2013 at 05:22 PM Report #505824 Posted May 4, 2013 at 05:22 PM sim, eu pensei nisso, mas imagina que eu quero que ao iniciar a pagina carregue o texto e so depois ao selecionar a segunda opcao do menu é que vejo as imagens! entao para isso primeiro tenho de carregar as imagens, ocultar e so depois é que mostro e volto a ocultar se quiser. eu achei melhor trocar isso! sei la. ideia minha qual o problema de carregares as imagens e ocultares? Não percebi muito bem, podes explicar melhor?
Bernardo Vieira Posted May 4, 2013 at 05:54 PM Author Report #505827 Posted May 4, 2013 at 05:54 PM nao tem problema nenhum deixa pra lá, eu queria saber mesmo é porque é que isso nao funcionava! queria fazer assim, mas como nao dá vai de outra forma!
brunoais Posted May 5, 2013 at 07:50 AM Report #505849 Posted May 5, 2013 at 07:50 AM Os eventos estão associados a nodes no DOM. Se removes o Node, então removes tb o evento. "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
malleus Posted May 9, 2013 at 04:44 PM Report #506472 Posted May 9, 2013 at 04:44 PM Como o brunoais já te disse a partir do momento que removes elementos(nodos) os seus eventos também se perdem. Se compreendo bem o teu caso, e para não alterar qualquer tipo de estrutura tens duas hipóteses: 1) Eventos LIVE $('#menucentro img').live('click', function() { // ... }); 2) ON/OFF $('#menucentro').on('click', 'img', function() { // ... }); A idéia de ambos é similar, deixar os eventos click "borbulhar" para cima na estrutura do DOM. A segunda opção é muitm mais eficiente e a primeira está em vias de deixar de ser suportada.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now