【问题标题】:How can you suppress click events of # hrefs?如何抑制 # hrefs 的点击事件?
【发布时间】:2012-07-25 20:22:24
【问题描述】:

我想在链接 href 是哈希 (#) 时自动抑制点击事件。我不想在每个视图中都使用 e.preventDefault() 来停止事件。

如何停止 # hrefs 的应用程序范围内的点击事件?

【问题讨论】:

    标签: backbone.js backbone-views backbone-routing


    【解决方案1】:

    有趣的问题。显然,骨干路由在默认行为之前被触发。您需要做的是插入一个在主干路由和默认行为之间触发的事件处理程序,然后是e.preventDefault()

    我相信事件处理程序的执行顺序取决于它们的定义顺序。所以稍微玩一下。您可以使用以下内容检查事件处理程序数组:$(window).data('events');(我假设您使用的是 jQuery?)

    【讨论】:

    • 是的 - 使用 Jquery。环顾四周,我找到了这个解决方案Backbone-Boilerplate - 所以在初始化应用程序时,他们会在使用导航方法之前抑制事件......对此有何想法?
    • 看起来您可以将preventDefault 放在该脚本的末尾。至少值得一试。
    • 是的,可以继续这样做。谢谢。
    猜你喜欢
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    相关资源
    最近更新 更多