若要重现此错误,请转到此处。
选择"颜色"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,所以有些东西可以更改…)