2013-08-24 32 views
0

我有一个ASP.NET MVC项目在运行。在页面加载时,easeOutQuad的缓动功能被立即使用。但是,有时当我加载页面时,它说没有称为easeOutQuad的函数,毫无疑问,这意味着jQuery UI库尚未正确加载。其他时候它运行良好。 我已经在输出源代码中检查了加载顺序几次,我可以向你保证,命令 - jQuery,jQuery UI,内联脚本不应该是问题的关键。 对此问题有何洞见?ASP.NET MVC:jQuery UI和其他脚本意外加载

PS:连接质量可能与此现象有关。鉴于此,我仍然不知道如何避免它。

回答

1

没有你的代码的一个例子很难说。但是,鉴于问题的本质,我猜测,您对easeOutQuad的调用未包含在jQuery文档就绪方法中。试试这个:

jQuery(document).ready(function($) { 
    //your call to easeOutQuad 
}); 

如果它已经被包裹在这个呼叫,或者这样做不会影响您的问题,请发表足够的代码复制的问题,所以我们可以提供进一步的帮助。

+0

感谢您的回答。我将脚本代码放在标记的末尾。我认为这几乎等同于上面的代码,是吗? –

+1

不幸的是,他们完成不同的任务。在您的访问者遇到潜在的JavaScript问题(例如缓慢加载文件)之前,将脚本放在主体的最后可以加载最可能的HTML。放置依赖于jQuery的JavaScript,尤其是在DOM上运行的JavaScript,在文档就绪钩子内部确保jQuery在开始操作之前就绪。 –

+0

这很有趣。实际上过了一段时间后,我把我用jQuery动态插入静态HTML文件的代码放到静态HTML文件中,然后尝试与它进行交互,事情很顺利。感谢您的杰出答案。我错了很长一段时间。 –