0

我遇到了一个非常奇怪的问题,希望有人能回答(它有点宽泛,但我会尽力解释),代码在打开时可以在本地页面上运行,但是一旦上传相同的页面就会引发错误。另外两个人也看过这个,导致更多的混乱。

我下载了 FancyBox 以使用内联功能通过 href 链接弹出用户表单,而不是将用户带到其他页面。

你可以在这里看到“股票”花哨的盒子:

1 fancyapps.com/fancybox/demo 在各种选项下,我正在使用内联。

我不需要 FancyBox 附带的所有其他功能,所以我将页面剥离到以下内容,效果很好:

2 * Fancy Box Demo 仅剥离为内联功能*

然后,我将此代码应用到我们的页面沙箱副本中以实现:

3 *沙盒复制与 Fancy Box 内联功能添加到“报价”链接*

它停止工作!与页面上的其他 javascript 没有冲突,唯一的区别是它有几个颜色 .css 更改,所有 .fancybox 都被命名为 .ptroffer 并且 css 代码不在页面上内联(这不会'无论如何都不会导致此错误)。在本地打开的同一页面效果很好 - 上传并引发错误。 SCRIPT5007:无法获取属性“ptroffer”的值:对象为空或未定义

    <script type="text/javascript">
    $(document).ready(function() {
        $('.ptroffer').ptroffer();
    });
</script>
  • 与链接 #2 和本地链接 #3 一起工作正常,但在上传 #3 时会引发错误。

请!

4

1 回答 1

0

您的代码中某处的某些东西是压倒一切的$。如果你改变那个“准备好的”处理程序来调用

jQuery('.ptroffer').ptroffer();

你不会得到那个错误。但是,事情可能行不通;我认为旧版本的 jQuery 正在被某些东西(1.3!)导入,这很糟糕。

编辑哦,我明白了,原型中出现了一些东西。你有一个常规脚本汤在那里,事情将是不可预测和奇怪的,直到你把它理顺。可能在某处某处正在调用jQuery.noConflict(),但您添加的“就绪”处理程序并不是为了期望而编写的。任何期待 jQuery 1.3 的代码也可能会令人惊讶。

于 2013-07-31T18:07:58.097 回答