【问题标题】:How to reset or re-initialize a Jquery plugin being used on AJAX-updated links?如何重置或重新初始化 AJAX 更新链接上使用的 Jquery 插件?
【发布时间】:2013-06-02 17:50:47
【问题描述】:

我正在使用此插件将箭头键导航添加到 website

效果很好!但是,有时我的链接通过 AJAX 更新,然后突出显示消失。因此,当我的链接更新时,我开始重新初始化插件。我注意到这解决了问题,但是现在我运行了多个插件副本,因此一次突出显示了多个按钮。

我知道在 Jquery 中没有“内置”destory 方法,但有没有人对如何重新初始化插件或至少摆脱运行的旧实例有任何想法。

可以看plugin on GitHub的源码

插件代码很简单,我相信我想要实现的也很简单。谢谢!

【问题讨论】:

    标签: ajax jquery jquery-plugins


    【解决方案1】:

    您正在使用的插件有一个更新函数,一旦您得到 ajax 结果就调用该函数。 例如

    var $keyNav = $('#navigation a').keynav();
    

    在 ajax 上成功

    $keyNav.update();
    

    我没有测试过这段代码,但我认为它会起作用。

    【讨论】:

    • 嗯。没有骰子。还有其他想法吗?我在那里放置了一些警报,看起来更新功能没有收到呼叫。也许是符号?
    • 即使有办法完全“杀死”对象,也没关系。我只是想要一个新实例,但旧实例一直在标记。
    • 好的。我得到了更新功能来接听电话,但亮点没有回来。所以看起来新插件初始化是最好的选择,但就像我说的,我不能让旧插件消失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-27
    相关资源
    最近更新 更多