0

我们正在构建一个 Saas 产品并购买了一个引导仪表板,所有 JS/CSS 资产都通过我们的 CDN 通过 sobdomain 加载。

在 chrome 上完美运行,但在 ie 和 ff 上组件无法正确加载,在 ff 上我收到以下错误:TypeError: can't access dead object ReferenceError: event is not defined

下面是一个非工作示例的链接(出于商业原因,我们不想授予对我们工作仪表板的访问权限)您可以在单击“下拉”菜单项时看到错误。据我所知,所有资产都正确加载。

http://hunchbuzz.com/acme/index.html

任何帮助,将不胜感激。

4

1 回答 1

0

好吧,一个接一个地解决你的错误。您在 IE 中测试页面时是否打开了 JavaScript 调试器?在 F12 开发人员工具中,选择脚本,然后选择开始调试。

jquery.sparkline.min.js首先,我暂时忽略了几个错误。然后我尝试单击您的“下拉”链接并收到此错误:

SCRIPT438: Object doesn't support property or method 'preventDefault' 
custom.js, line 3 character 1193

突出显示的代码是(重新格式化以提高可读性):

$('.dropmenu').click( function(){
    event.preventDefault();
    // ...
});

你看到问题了吗?是什么event?代码应该是:

$('.dropmenu').click( function( event ){
    event.preventDefault();
    // ...
});

它可以在任何浏览器中运行的事实可能是由于event某些浏览器为与非常旧的代码兼容而创建的全局变量。

现在回到迷你图问题。我看到它在 中遇到了两个错误jquery.sparkline.min.js,但是使用最小化的代码,问题并没有像另一个问题那样突然出现在我身上。

jquery.sparkline.js在调试时,加载、 、 jQuery 等的非缩小版本会很有帮助custom.js。然后您将在调试器中查看可读代码,这应该更容易发现这些问题。

于 2013-05-14T02:43:53.610 回答