Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Salve amigos,
Tenho um pepino nas mãos e se não resolver esse pepino vai parar em outro lugar (rs)
Seguinte, na aplicação do meu cliente temos um FieldSet que contem uma DIV sem medidas, pois ela se abre de acordo com o conteúdo. Até ai tudo de boa.
No fiedSet que envomve essa DIV, temos um <Legend> com a função de ocultar a div (abre e fecha).
Quando fechada, o FieldSet reduz seu tamanho para o tamanho do <Legend>, mas meu cliente quer que ele continue do tamanho do DIV que estava aberto
Fiz um código abre e fecha DIV e alterna a class do FieldSet - quando aberto a classe mostra borda completa, quando fecha apenas a borda superior é apresentada.
Acontece que no IE 7 não funciona...
Alguém pode dar uma forcinha?
Segue o código
function toggleLgd(legend) {
var fs = legend.parentNode;
var obj = legend.nextSibling;
while (obj && obj.nodeName.toLowerCase() != "div") {
obj = obj.nextSibling;
}
var w = obj.clientWidth;
alert(" w " +w);
if (w == 0){
w = fs.style.width;
}
fs.style.width = w + "px";
alert("1 " + fs.style.width);
if (obj) {
if (obj.style.display == "none") {
obj.style.display = "";
} else {
obj.style.display = "none";
}
}
if (legend.className == "openFieldSet") {
fs.style.width = w + "px";
alert("2 " + fs.style.width);
legend.className = "closedFieldSet";
if (fs && fs.nodeName.toLowerCase() == "fieldset") {
fs.className = "selectedFld";
}
} else {
legend.className = "openFieldSet";
if (fs && fs.nodeName.toLowerCase() == "fieldset") {
fs.className = "";
}
}
}
Desde já agradeço a força!
Abraços,
Gustavo
fala velho! Firme?
Me diz uma coisa... você só quer "sumir" com a DIV mas manter o tamanho original dela?
Então tenta utilizar a propriedade VISIBLE ao invés de DISPLAY! Ele só vai deixar ela invisível e não escondê-la!
ABRAX!!
Noooooooossaaaaaaaaa berkowitz!
Tinha me esquecido completamente a existência da diferença desses dois desgraçadinhos
Valeu véio!
Tá funcionando
CODE
function toggleLgd(legend) {
var fs = legend.parentNode;
var obj = legend.nextSibling;
while (obj && obj.nodeName.toLowerCase() != "div") {
obj = obj.nextSibling;
}
if (obj) {
if (obj.style.visibility == "hidden") {
obj.style.visibility = "visible";
} else {
obj.style.visibility == "hidden";
}
}
if (legend.className == "openFieldSet") {
legend.className = "closedFieldSet";
if (fs && fs.nodeName.toLowerCase() == "fieldset") {
fs.className = "selectedFld";
}
} else {
legend.className = "openFieldSet";
if (fs && fs.nodeName.toLowerCase() == "fieldset") {
fs.className = "";
}
}
}AHUahuahuahuhuaUHa.... acontece véi! relax! :P
Parabéns ae! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
ABRAX!!!
Acho que esse tópico tá com pau!