打开带功能的手风琴面板
-
06-07-2019 - |
题
这里是完整的代码,包括拼写更正和一切。我仍然收到错误。
父母的代码是:
$("#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>
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);
}
});
});
我在火灾中遇到的错误现在是
$("#leftNav", top.document).accordion is not a function
解决方案
你在代码中拼错了手风琴。
修改强>
我有一个在Firefox中运行的 工作演示 (在IE6中尝试但是它失败了),只有当“客户”时才标头是当前选择的标头。您可以通过在网址中添加 / edit 来查看代码。
这似乎是一个棘手的问题需要解决,遗憾的是我现在没有时间进一步研究它。为了防止错误
$("#leftNav", top.document).accordion is not a function
我不得不将jQuery UI脚本的引用添加到iframe的源代码。
似乎手风琴从iframe内部无法进入,我不确定的原因。我让激活工作的方式是非常hacky,基本上再次在 #leftNav
上调用 .accordion()
,然后是 .accordion('activate' ,3);
,如下所示
$.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);
}
});
请注意,我还使用 parent.document
而不是 top.document
- 后者无法正常工作,但通常在Firefox中使用。
我希望它能让你更进一步。当我有更多时间时,我可能会回到这个。
其他提示
这可能是手风琴与手风琴的错字吗?
不隶属于 StackOverflow