淘汰赛手风琴绑定断裂

2024-01-11

以下绑定在 1.9 之前有效:

ko.bindingHandlers.accordion = {
    init: function(element, valueAccessor) {
        var options = valueAccessor() || {};
        setTimeout(function() {
            $(element).accordion(options);
        }, 0);
        ko.utils.domNodeDisposal.addDisposeCallback(element, function(){
            $(element).accordion("destroy");
        });
    },
    update: function(element, valueAccessor) {
        var options = valueAccessor() || {};
        $(element).accordion("destroy").accordion(options);
    }
}

但从1.9开始,它不再起作用,并给出以下错误:

Uncaught Error: cannot call methods on accordion prior to initialization; attempted to call method 'destroy'

我很难弄清楚为什么。我查看了 jQuery UI 升级说明,但似乎没有什么相关的。

造成这种情况的原因是什么?我的绑定需要更改什么?


未捕获的错误:在初始化之前无法调用折叠面板上的方法;尝试调用方法“destroy”

此错误表明您正在调用destroy在初始化小部件之前,手风琴小部件的方法。

问题在于您使用的自定义绑定代码setTimeOut。 setTimeOut 中的代码在更新函数之后运行。因此,手风琴插件未在您的元素上初始化,并且在您调用的更新函数中destroy手风琴的方法。

一个简单的替代方法是,您应该在调用任何方法之前检查 Accordion 插件是否已在元素上初始化,例如:

if(typeof $(element).data("ui-accordion") != "undefined"){
 $(element).accordion("destroy").accordion(options);
}

在这里你可以检查工作中的jsbin http://jsbin.com/ijibef/1/edit.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

淘汰赛手风琴绑定断裂 的相关文章

随机推荐

  • 添加具有颜色属性的边/节点

    我使用的是networkxPython 的包 文档说我们可以做H add edge 1 2 color blue 但输出显示默认颜色 黑色 的边缘 当我做H add node 12 color green 我得到一个具有相同默认红色的新节点
  • Gradle 中的冒号运算符是什么?

    你总是看到这样的代码 project bluewhale hello 这似乎不是 Groovy 语法 它是什么 冒号不是运算符 您可以看到它在字符串内使用 它是 Gradle 用于描述子项目路径的分隔符 例如 evaluationDepen
  • Jenkins Groovy 脚本发现 null testResultAction 成功运行

    我们有一个用于詹金斯测试套件的电子邮件报告编写者 它使用 Groovy 脚本来查找正确的报告 然后制作一个 HTML 报告 详细说明测试状态 上次运行时间 链接等 hudson model Hudson instance getItems
  • 桌面浏览器是否支持 Facebook Messenger 弹出网页视图?

    我可以在 IOS Messenger 应用程序上使用 Messenger webviews 配置为文档中描述 https developers facebook com docs messenger platform send api re
  • if constexpr 未在模板化 lambda 中丢弃的错误分支

    我在模板 lambda 中遇到 if constexpr 问题 为了便于讨论 让我们忽略我是如何到达那里的 但我有一个 struct foo 它以某种方式定义 结果如下 template
  • Django:将数据从一个数据库复制到另一个数据库

    我有两个 sqlite db 文件 我想将数据库文件表中一列的内容复制到另一列 例如 我在名为 new db 的数据库文件中有模型信息 class Information models Model info id models AutoFi
  • 显示 Volley 文件下载的进度值

    我需要以百分比显示文件下载进度 目前我正在使用Volley图书馆 我用InputStreamVolleyRequest发出下载请求的类BufferedOutputStream读 写文件 如何以最有效的方式显示进度更新 我正在将进度条与 Ht
  • 为什么此代码不能正确增加计数器?

    在下面的代码中 为什么它不每次将整数加一 例如 假设我有1 OF 5当我提交表格时 提交后应该是2 OF 5 但相反 它显示5 OF 5 即使我将最大值从 5 更改为 3 也会发生这种情况 它开始于1 OF 3并立即跳转到3 OF 3 这是
  • 使用UTF-8编码的VBA Excel宏写入文件[重复]

    这个问题在这里已经有答案了 我正在 Excel 中创建一个宏 用于处理电子表格并将内容 文本 写入文件 我需要将此文件编码为 UTF 8 我尝试使用 OpenTextFile TristateTrue 和 StrConv vbUnicode
  • 如何避免Angularjs中的大量依赖

    我有一个 Angular 应用程序 它运行良好 但随着我的应用程序变得越来越大 我担心必须在每个控制器中注入大量依赖项 例如 app controller viewapps scope Appfactory Menu timeout fil
  • 单独窗口中的 Android Studio 模拟器

    我的 Android Studio 遇到问题 这是我第一次安装Android Studio 问题是 当我安装任何设备时 它会在设备或模拟器周围出现灰色背景 我不知道它是否与最新的 Android Studio 版本有关 因为我已经更新了它
  • C++ 中的头文件和 Java 中的抽象类/接口实现都是相同的想法,这是否正确?

    我对 C 有点熟悉 我知道对于几乎每个头文件 我都必须创建源文件来配合它 现在我正在研究java接口和实现 它看起来是一样的 首先 您只需在一个类中命名变量和方法 然后在其他类中定义它们 C 和Java中的这些东西是不是基本相同或者相似 J
  • 本地站点的 HTML 图像

    我是 HTML 新手 有一个关于图像的简单问题 下面是我正在使用的一个简单的 html 文件 我想将图像放入其中 该图像存储在我网站的主目录中 该网站是本地的 在我的 MacBook 上 h1 My First Heading h1 p M
  • 使用字符串日期对列表进行排序 [Kotlin]

    我有数组列表typeBeanArrayList其中元素有点像日期 例如 30 03 2012 28 03 2013 31 03 2012 2 04 2012 我怎样才能排序降序 Code typeBeanArrayList database
  • 如何通过保持“templateurl”不变来编译 Angular 2 Webpack

    Webpack 通过在中生成 js 来编译 typescript 文件dist文件夹 我发现 webpack 正在将所有 templateurl 更改为 template 如下所示 我的打字稿组件 Component selector ap
  • CListCtrl:如何保持水平滚动位置?

    如何保持 CListCtrl 的水平滚动条位置 我定期转储并重新填充列表控件的内容 因此无需明确记住旧位置并恢复它 滚动就会返回到左上角 我问了一个相关问题 CListCtrl 如何保持滚动位置 https stackoverflow co
  • 雪豹上的 python 需要 32 位 libxml2 吗?

    我在我的 sl mbp 上安装 scrapy 真是太麻烦了 它需要 libxml2 所以我开始安装它 从 macports 安装它似乎并没有拉下 python 绑定 通过 scrapy 的说明从源代码安装它 here http doc sc
  • 在Eclipse中导入ant build.xml

    我有一个使用ant构建的android项目 是否可以在eclipse IDE中导入这个ant项目 更新 有一个选项可以使用 ant 创建项目build xml在 Eclipse 中 现有 ant Buildfile 中的文件 gt 新建 g
  • 按降序对两列最常见的组合进行排序

    我的数据框看起来像这样 A B C 1 3 1 2 1 1 2 3 1 1 2 1 3 1 1 1 2 1 2 1 1 1 3 1 1 2 1 我想将数据减少为仅按降序排序的两列 A 和 B 最常见的组合 输出应该看起来像 A B coun
  • 淘汰赛手风琴绑定断裂

    以下绑定在 1 9 之前有效 ko bindingHandlers accordion init function element valueAccessor var options valueAccessor setTimeout fun