【问题标题】:Uncaught TypeError ONLY in Chrome仅在 Chrome 中未捕获的 TypeError
【发布时间】:2013-03-17 21:23:38
【问题描述】:

我在 JavaScript 中调用一个简单函数时遇到了一个非常奇怪的问题。

举个例子,哪怕是一个简单的:

<a href='#' onclick="javascript:alert(123);">click</a>

或:

<a href='#' onclick="alert(123);">click</a>

给我一​​个未捕获的类型错误:对象不是函数。 但仅在 Chrome 中且仅在我的笔记本上。在我的工作站(相同的系统,完全相同的 Chrome 版本)和其他所有浏览器中,这条线按预期工作。

几年前我一直在使用 JS,但这个错误让我从几天开始就抓狂了。

该网站带有脚本和一些手写的 JS,但并没有什么特别之处。 scriptaculous 运行良好,JS-Console 没有显示任何错误,除了我笔记本上的 @Chrome 。

你们中有人曾经有过这种情况吗? 我真的不知道发生了什么。


【问题讨论】:

  • javascript:标签在onclick里没用,不要用。

标签: javascript google-chrome typeerror


【解决方案1】:

我的建议是通过 javascript 分配它,而不是像内联属性。有时您会遇到奇怪的行为,将其设置为属性。

你可以使用 jQuery:

jQuery('.myClickableLink').click(function(){ alert(123) })

我认为这是一种更简单的方法。

【讨论】:

  • 是的,也许这是唯一的解决方案。但随后我将不得不重新概念网站的整个技术,因为一切都基于脚本。但也许这就是切换到 jQ 的关键......
  • 该死的。与 jQ 我得到了 Porperty 'alert' of object is not a function
【解决方案2】:

我打赌你在劫持 window.alert 的机器上安装了一个弹出窗口阻止程序。禁用插件,看看它是否正常工作。 [通常弹出窗口拦截器会这样做]

【讨论】:

  • 不,Chrome 中没有安装弹出窗口阻止程序。还有警报();只是例如。如果我调用另一个函数 onclick 也没关系。错误总是一样的。
【解决方案3】:

使用

window.alert('msg)'; 

它会起作用的......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-31
    • 2012-03-29
    • 1970-01-01
    • 1970-01-01
    • 2014-05-22
    • 1970-01-01
    • 2013-04-14
    • 1970-01-01
    相关资源
    最近更新 更多