Abrir um painel de acordeão com uma função
-
06-07-2019 - |
Pergunta
ok aqui está o código completo com as correções ortográficas e tudo. Eu ainda estou recebendo um erro.
código para o pai é:
$("#leftNav").accordion({autoHeight: true});
<div id="leftNav"> <h3><a href="#">Client</a></h3>
<div> static text </div>
<h3><a href="#">Account Summary</a></h3>
<div> static text </div>
<h3><a href="#"> Profile</a></h3>
<div> static text </div>
<h3><a href="#">trip</a></h3>
<div>
<div id="tripHolder">
</div>
</div>
o código para o iFrame:
$(".bookingClass").click(function(){
var thisBookingClass = 'bClass='+$(this).attr("id");
$.ajax({
type:"POST",
url:"bookIt.jsp",
data: thisBookingClass,
cache:false,
success: function(msg) {
$("#tripHolder",top.document).html(msg);
$("#leftNav",top.document).accordion('activate',3);
}
});
});
O erro que eu estou recebendo em bug fogo é agora
$("#leftNav", top.document).accordion is not a function
Solução
a ortografia acordeão errado em seu código.
EDIT:
Eu tenho um de Trabalho Demonstração que funciona no Firefox (tentei no IE6 mas ele falhou), apenas se o cabeçalho "cliente" é aquele selecionado no momento. Você pode ver o código, adicionando / editar para a URL.
Este parece ser um problema complicado para resolver e, infelizmente, eu não tenho o tempo para olhar para ele mais no momento. Para evitar o erro
$("#leftNav", top.document).accordion is not a function
Eu tive que adicionar uma referência para a interface do usuário script de jQuery para a fonte do iframe.
Parece que o acordeão torna-se inacessível a partir de dentro do iframe, a razão pela qual eu não tenho certeza. A maneira que eu tenho a ativar para o trabalho era muito hacky e basicamente chamado .accordion()
na #leftNav
novamente, seguido por .accordion('activate',3);
como no seguinte
$.ajax({
type:"POST",
url:"http://jsbin.com/etiju",
data: {},
dataType: 'html',
cache:false,
success: function(msg) {
$('#tripHolder',parent.document).html(msg);
$("#leftNav",parent.document).accordion({ autoHeight:true }).accordion('activate',3);
}
});
Observe que eu também usei parent.document
vez de top.document
-. Este último não estava funcionando, mas normalmente faz no Firefox
Espero que ele tem você um pouco mais adiante. I pode voltar a esta um quando eu tiver mais tempo.
Outras dicas
Pode ser o erro de digitação de acordeão vs accordian?