如何抑制此 JavaScript 错误:异常:类型错误:$( "j2t-temp-div" ).down( ".j2t_ajax_message" ) 未定义?



若要重现此错误,请转到此处。

选择"颜色"one_answers"尺寸",然后单击"添加到购物车",当"加载…"对话框出现时,在它变成"添加到车"对话框之前,单击阴影中的任何位置取消对话框,然后尽快单击页面上的任何链接。

如果你足够快,你可以重现这个警告错误:

Exception : TypeError: $("j2t-temp-div").down(".j2t_ajax_message") is undefined

(Firefox 9)

Exception : TypeError: Cannot read property 'innerHTML' of undefined

(Chrome 17)

IE 8没有警告错误。

我的问题是如何抑制这个错误。我不小心踩了它好几次,我相信我的用户也会这么做的。而且它在生产现场看起来并不漂亮。

有没有什么方法可以在保持AJAX添加到购物车功能的同时禁用这个异常?

任何想法都将不胜感激。谢谢

要抑制它,可以使用typeof:

if (typeof variableHere != 'undefined'){
  // your further code
}

例如,如果你这样做:

alert(someVar);

如果以前没有定义someVar,您将收到:

someVar is not defined

但当你这样做时:

if (typeof someVar == 'undefined'){ ... }

它将抑制错误。


因此,您必须找出导致该错误的变量,然后需要使用typeof检查来抑制该消息。

我发现$("j2t-temp-div")缺少#.。这取决于j2t-temp-div是div的id还是class。(我有一段时间没有使用jquery,所以有些东西可以更改…)

最新更新