0

我正在使用带有敲除功能的 jQuery 手风琴控件来根据某些客户端活动向控件动态添加/删除项目。我创建了一个像这样的淘汰赛绑定:

ko.bindingHandlers.accordion = {
  init: function (element, valueAccessor) {
    var options = valueAccessor() || {};
    setTimeout(function () {
      $(element).accordion(options);
    }, 0);

    //handle disposal (if KO removes by the template binding)
    ko.utils.domNodeDisposal.addDisposeCallback(element, function () {
      $(element).accordion("destroy");
    });
  },
  update: function (element, valueAccessor) {
    var options = valueAccessor() || {};
    $(element).accordion("destroy").accordion(options);
  }
}

现在我的问题是手风琴的尺寸......它总是看起来非常压缩(垂直)。我尝试设置包含控件的 DIV 的高度,如下所示:

<div id="LearningPaths" data-bind="foreach: allLearningPaths, accordion: {}" style="height:500px; border:1px solid red;">

但是手风琴的面板没有改变……它们仍然不是很“高”。这是它的样子:http ://sdrv.ms/STA9Y6

我认为当我使用 .accordion() 时可以传入一个设置,但是对于我的绑定处理程序,我不确定如何执行此操作,因为我已经传入了“选项”对象。

我想要的是让每个面板的内容区域扩展到手风琴控件中的整个可用侧......想法?

4

1 回答 1

1

首先,我认为您的问题与 SharePoint Web 部件有关。我创建了一个基于 SharePoint 中的摘要链接 Web 部件的手风琴解决方案,可以在此处找到:http ://www.n8d.at/blog/turn-summary-link-web-part-into-an-accordion/ 我编写了自己的手风琴来完成此操作,这也确保如果您想编辑页面,手风琴脚本将不会被加载。

另一方面,我认为您的问题与 css 而不是 jquery 更相关。您在 CSS 中使用浮动样式吗?然后,您需要确保使用所谓的 clear-fix。这可以通过定义以下样式来完成:

.panel:after{ clear: both; }

于 2012-11-09T15:23:00.660 回答