Javascript 在IE10中使用帧会导致SCRIPT5002:函数预期错误

Javascript 在IE10中使用帧会导致SCRIPT5002:函数预期错误,javascript,jquery,compatibility,internet-explorer-10,Javascript,Jquery,Compatibility,Internet Explorer 10,我已经在互联网上做了相当多的搜索,还没有找到解决这个问题的方法。发生的事情是,我有一个页面,它根据导航单击在一个框架中呈现。这个功能在IE10之前的所有其他浏览器版本中都可以使用,并且已经使用了很多年,并且在兼容模式下仍然可以完美地工作,但我不想要兼容模式。基本上,当我的函数到达这行代码时 window.parent.frames(1).location='../frmsetPage.aspx? sFrameScrolling=yes&pageurl=secCreating_Editin

我已经在互联网上做了相当多的搜索,还没有找到解决这个问题的方法。发生的事情是,我有一个页面,它根据导航单击在一个框架中呈现。这个功能在IE10之前的所有其他浏览器版本中都可以使用,并且已经使用了很多年,并且在兼容模式下仍然可以完美地工作,但我不想要兼容模式。基本上,当我的函数到达这行代码时

window.parent.frames(1).location='../frmsetPage.aspx?
sFrameScrolling=yes&pageurl=secCreating_Editing/secContent/wfContent.aspx?iPageID=' + 
p_iSitePageID + '&helpurl=secHelp/wfHelp.aspx?iBuilderPageID=29'
我得到的错误是

SCRIPT5002:需要函数

在我所做的所有研究中,唯一有意义的是讨论window.parents.frames(1)对象的定价问题,但我似乎无法通过微软的任何东西来验证这一点,所以我真的不知道

任何帮助都将不胜感激! 非常感谢你, NickG

试试:

window.parent.frames[1].location='../frmsetPage.aspx?
sFrameScrolling=yes&pageurl=secCreating_Editing/secContent/wfContent.aspx?iPageID=' + 
p_iSitePageID + '&helpurl=secHelp/wfHelp.aspx?iBuilderPageID=29'
而不是:

window.parent.frames(1).location='../frmsetPage.aspx?
sFrameScrolling=yes&pageurl=secCreating_Editing/secContent/wfContent.aspx?iPageID=' + 
p_iSitePageID + '&helpurl=secHelp/wfHelp.aspx?iBuilderPageID=29'
原因:使用
[]
而不是
()
像数组一样访问
集合


祝你好运

您没有调用框架方法!它应该是方括号。
.frames(1)。
应该是
.frames[1]。
frames是所有帧的数组,而不是函数。如果与frames数组引用的语法不正确有关,为什么在兼容模式和过去几年的所有其他浏览器上都可以这样做?只是IE10在引用这些东西时制定了更严格的标准吗?因为网络本质上是(几乎没有文档记录的)标签汤,历史上浏览器战争的一部分是试图理解“蹩脚/非法/愚蠢”的代码。指定兼容模式将重新启用IE中不可预知的“我能猜得比browserX更好”代码。Crockford是对的,最好的解决方案是重新开始。同时,只需像其他web开发人员一样学习,他们在过去15年中将标准提炼为可靠的标准。恕我直言,它比非标准的html5 ideas.PS更有意义,出于(历史)兴趣(可能是为了取笑以M$为代价),您是否可以共享一个使用
框架(#)而不是
框架[#]
的官方M$文档?(因为您刚刚浏览了互联网,正在研究您的框架问题。)