【问题标题】:Hashtag URL rewrite / DOM manipulation causing JS misfireHashtag URL 重写/DOM 操作导致 JS 失火
【发布时间】:2012-02-22 15:24:24
【问题描述】:

我正在使用广受欢迎的 Fancybox (http://fancybox.net) 作为灯箱插件,但由于某种原因,它抛出了 Uncaught TypeError: Object [object Object] has no method 'fancybox' 错误并失败执行。

通过删除我的 AJAX / jQuery DOM 重写脚本,我已经确认是哈希 http://myurl.com/!#/ 的附加导致 Fancybox 脚本在其目标中失灵,在脚本上给出空响应。

AJAX 内容获取的细节并不那么重要,关键是它会导致 Fancybox 的某些方面无法正确执行(依赖于插件代码主体中的根 URL)。如何重写插件以找到正确的根 URL 并忽略哈希重写?

这是我需要重写的关于 DOM 定位的 Fancybox 代码的粘贴箱:http://pastebin.com/s9FjCiai

您可以在这里查看我的开发沙箱中的开发中站点:http://dreamstartest.net

JS 资源肯定是根据 Chrome 开发者工具加载的……还有什么其他的调试方法吗?

编辑在 Github 上将其作为问题打开,但就像我在下面的评论中所说,开发人员看起来已经被淹没了,如果有人能找到违规行,我已经到了最后期限这可能会导致 URL 哈希重写出现问题,我将永远感激不尽!

【问题讨论】:

  • 您是否将此作为错误提交给开发人员?
  • 好点。不幸的是,开发人员已经放弃了这个根据 GPL 许可的版本,转而支持最近的 v2,该 v2 现在处于非商业许可下。我很欣赏他的立场,但旧版本对我来说一直很好用。不幸的是,Github 存储库现在充满了问题,而且我正处于最后期限,所以我怀疑我能否从开发人员那里得到足够快的响应。
  • 我正在决定一个项目的模式。我想我会排除fancybox。
  • 如果你找到了可以与我正在做的奇怪的 AJAX 技巧一起工作的东西,请告诉我。我感觉他们中的大多数都不能满足我的要求,但我不知道......

标签: javascript jquery ajax dom rewrite


【解决方案1】:

事实证明,最近发布的 Fancybox v2 解决了这个问题。在这里下载:https://github.com/fancyapps/fancyBox

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多