Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Vi este efeito jQuery toggle para revelar e esconder, tem com ser com varais divs diferentes, não consigo mudar os nomes de cada chamada. Como faço?
http://www.maujor.com/blog/pg_apoio/jquery-toggle-texto-exemplo.html
Não exatamente APENAS através do atributo class.
Com a jQuery você pode usar qualquer combinação de seletores. Se você não quiser "sujar" a marcação, pode se basear no atributo rel, por exemplo.
Ou, em você conhecendo os ID's dos elementos que participarão do esconde-esconde e o HTML dessa página seja usado apenas para essa situação em particular (para que outras páginas reusem tais ID's e o JavaScript te deixe louco), pode fazer manualmente, separando os diversos seletores por vírgulas.
entao..
eu tbm cai nessa pegadinha das <div>'s...
pq eu tenho uma classe de tabela, com uma imagem no fundo o nome da classe é "fundo_tabela"
e mo id da div principal é "tamIframe" que eu uso outro codigo js para redimenssionar um iFrame na index.html
eu usei o codigo do exemplo toggle mas nada aconteceu
sera q um codigo entrou em conflito com o outro??
ai vao meus codigos
//redimenssionar iFram - esse codigo vem primeiro
function redimensionarIframe() {
var objIframe = parent.document.getElementById("_buraco"); //nome iframe
var objTam = document.getElementById("tamIframe");//nome div
objIframe.style.height = (objTam.offsetHeight+50)+"px";
}
window.onload = redimensionarIframe;
//codigo exemplo toggle
jQuery.fn.toggleText = function(a,B) {
return this.html(this.html().replace(new RegExp("("+a+"|"+b+")"),function(x){return(x==a)?b:a;}));
}
$(document).ready(function(){
$('.fundo_tabela').before('<span class="titulo">Revelar conteúdo</span>');});
})
coloquei os dois codigos antes do fechamento da tag <body>
oq fiz errado??
Sem ver o código completo ou o script em funcionamento fica um pouco dificil, mas tente isto:
Troque:
$('span', '#tamIframe').click(function() {
Por
$('span.titulo').click(function() {
esse é o problema..
os 2 codigos q postei estão inteiros..
mas ja consegui resolver o problema, eu realmente estava usando nomes errados..
mas agora o problema é o seguinte:
nesse codigo do exemplo toggle, ele só faz com uma nomenclatura "Revelar/Esconder Conteudo"
eu consegui mudar para "Revelar/Esconder Cartazes" e "Revelar/Esconder Banners" mas eu tive que reescrever todo o codigo...
e preciso fazer isso com mais 5 nomenclaturas diferentes "Outdoors", "Cartoes" existe alguma forma q eu fassa isso sem ter que reescrever o codigo inteiro??
so pra relembrar, o codigo do exemplo toggle:
//codigo exemplo toggle
jQuery.fn.toggleText = function(a,B) {
return this.html(this.html().replace(new RegExp("("+a+"|"+b+")"),function(x){return(x==a)?b:a;}));
}
$(document).ready(function(){
$('.tgl').before('<span>Revelar conteúdo</span>');});
})>
esse é o problema..
os 2 codigos q postei estão inteiros..
mas ja consegui resolver o problema, eu realmente estava usando nomes errados..
mas agora o problema é o seguinte:
nesse codigo do exemplo toggle, ele só faz com uma nomenclatura "Revelar/Esconder Conteudo"
eu consegui mudar para "Revelar/Esconder Cartazes" e "Revelar/Esconder Banners" mas eu tive que reescrever todo o codigo...
e preciso fazer isso com mais 5 nomenclaturas diferentes "Outdoors", "Cartoes" existe alguma forma q eu fassa isso sem ter que reescrever o codigo inteiro??
so pra relembrar, o codigo do exemplo toggle:
//codigo exemplo toggle
jQuery.fn.toggleText = function(a,B) {
return this.html(this.html().replace(new RegExp("("+a+"|"+b+")"),function(x){return(x==a)?b:a;}));
}
$(document).ready(function(){
$('.tgl').before('<span>Revelar conteúdo</span>');});
})
Como estou começando agora a programar em JQuery, ainda sou meio noob enquanto isso, mas o que eu sei é que, se deseja poupar tempo, procure sobre a criação de funções para o Jquery.
Procure mais sobre a ferramenta: jQuery.fn
beleza...
é só dá o nome da classe para as outras divs....
mais se você quiser revelar varias ao mesmo tempo poste seu codigo....