0
// accordion
    $("#left-nav .block h2").click(function(){
      $(this).next("div").slideToggle("fast", function() {
            alert("hey");
            $("#left-nav, #content, #aside").equalHeight();
      })
      .siblings("div:visible").slideUp("fast");
      $(this).toggleClass("active");
      $(this).siblings("h2").removeClass("active");
    });
    $("#left-nav .block h3").toggle(function(){
        $(this).next("ul").slideToggle("fast");
        $(this).removeClass("active");
    }, function() {
        $(this).next("ul").slideToggle("fast");
        $(this).toggleClass("active");
        $(this).siblings("h3").removeClass("active");
    });

警报有效,但未调整列大小。这是 equalHeight 函数:

jQuery.fn.equalHeight=function() {
var maxHeight=0;
this.each(function(){
 if (this.offsetHeight>maxHeight) {maxHeight=this.offsetHeight;}
});
this.each(function(){
 $(this).height(maxHeight + "px");
 if (this.offsetHeight>maxHeight) {
  $(this).height((maxHeight-(this.offsetHeight-maxHeight))+"px");
 }
});
};

顺便说一句,我的手风琴菜单可以重写得更好吗?

非常感谢!

4

1 回答 1

0
jQuery.fn.equalHeight=function() {
  var maxHeight=0;
  this.each(function(){
    if ($(this).height() > maxHeight) {
      maxHeight = $(this).height();
    }
  });
  return this.each(function() {
    $(this).height(maxHeight);
  });
};

注意:确保在您在手风琴代码中调用它之前定义它:)。

如果一切都失败了,试试这个插件

于 2009-10-01T03:29:28.257 回答