Javascript 主干木偶批准器将无效参数传递给Internet Explorer 8(IE8)上的函数调用
我已经在我的应用程序中设置了一个主干木偶应用程序,如下所示Javascript 主干木偶批准器将无效参数传递给Internet Explorer 8(IE8)上的函数调用,javascript,backbone.js,internet-explorer-8,coffeescript,marionette,Javascript,Backbone.js,Internet Explorer 8,Coffeescript,Marionette,我已经在我的应用程序中设置了一个主干木偶应用程序,如下所示 CL.Modules.Users = (Users, App, Backbone, Marionette, $, _) -> Users.Router = class Router extends CL.AppRouter appRoutes: 'profile' : 'showProfile' 我有一个函数showProfile(),它接受一个参数 showProfile: (arg1) ->
CL.Modules.Users = (Users, App, Backbone, Marionette, $, _) ->
Users.Router = class Router extends CL.AppRouter
appRoutes:
'profile' : 'showProfile'
我有一个函数showProfile(),它接受一个参数
showProfile: (arg1) ->
alert(arg1)
arg1.preventDefault() if arg1?
在IE8以外的浏览器中,arg1被警告为未定义,但在IE8上,它是一个空字符串(我使用typeof检查)。问题是
arg1?
检查事件是否未定义,因此在IE8上对空字符串调用了preventDefault()
,从而中断了执行。我不确定这是怎么发生的。有什么想法吗?这对我来说很好。IE8 Win7。您必须通过主干网源来查找问题。这很简单。您确定showProfile不是从其他地方调用的吗?当堆栈跟踪为空字符串时,您是否检查了堆栈跟踪?也许这可以帮助您: