第12行内存不足

时间:2010-09-13 06:28:36

标签: jquery internet-explorer

我在localhost开发了一个网站。我正在使用jquery,一些javascripts,CSS和HTML。 当我尝试使用IE加载网站时,会弹出一条错误消息,说“第12行内存不足”。我点击“确定”并继续正常工作。然而,该消息并未显示在Chrome或Firefox中。 任何人都可以告诉我为什么会如此。我该如何解决?

编辑:我删除了jquery ui包含行,它停止显示错误。 (删除了下面的一行)

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>

我的Javascript代码。

<script type="text/javascript">
 $(document).ready(function() {


        $("ul.blockeasing li.main").mouseover(function(){ //When mouse over ...
               //Following event is applied to the subnav itself (making height of subnav 60px)
              $(this).find('.subnav').stop().animate({height: '60px', opacity:'1'},{queue:false, duration:1500, easing: 'easeOutElastic'})
        });

        $("ul.blockeasing li.main").mouseout(function(){ //When mouse out ...
              //Following event is applied to the subnav itself (making height of subnav 0px)
              $(this).find('.subnav').stop().animate({height:'0px', opacity:'0'},{queue:false, duration:1600, easing: 'easeOutElastic'})
        });


        //menu itembackground color animation           
        $("ul.blockeasing li").hover(function() {
              $(this).stop().animate({ backgroundColor: "#C13D93"}, 600);},
           function() {
              $(this).stop().animate({ backgroundColor: "#de93c3" }, 600);
        });

});
</script>

3 个答案:

答案 0 :(得分:2)

首先,没有任何消息来源是不可能的。 “内存不足”可能是一个无限循环。我真的不知道。

但是你声明你是“ ...试图执行PHP代码。”在这种情况下确保第12行真的是你认为的那样。如果您在同一个文件中有PHP和HTML,请记住您在客户端(即在渲染输出中)中查找第12行,而不是在PHP文件中。


修改
我们不需要您的PHP代码。实际上我们只对渲染输出感兴趣(即产生的标记 - HTML和JavaScript - 发送到浏览器)。 如果错误是由包含的JS文件引起的,请发布此文件。

此外,对您的问题的一些评论值得注意。尤其是@ strager的评论;删除JS包含,直到错误消失。这可能有助于您找出原因。

答案 1 :(得分:2)

其他一些人,包括MrBoJangles和guy 可能已经解决了这个问题,我可以从经验中确认。确保您运行的是兼容版本的JQuery&amp; JQueryUI - 即只获取两者的最新稳定版本。我在IE8中遇到的问题是基于这个兼容性问题 - 我最初运行的是JQuery 1.3.2,我需要一个更新的版本来使用我的新版本的JQuery UI。

答案 2 :(得分:1)

主要是这个错误是由无限递归函数调用引起的,它会耗尽浏览器堆栈,导致“Out of memory error”