我的页面正文中有以下代码。 (我知道最好加载到 header 中,但我无权访问 header 。)
<script src="javascript/jquery-1.5.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function(){
alert('hello world');
});
</script>
Firebug 显示 jquery-1.5.2.min.js
加载正常,并且是直接从 jQuery 下载页面 wget
获取的,因此应该没有内容的问题。但是,jQuery.noConflict()
上的脚本 barfs 为:
Error: jQuery is not defined
我尝试将这一行移到 (document).ready
内,但没有帮助。那么,如何在不引用 jQuery 的情况下检查 jQuery 是否已加载呢? :)
我需要在无冲突模式下使用 jQuery,因为同一页面上有 scriptaculous 脚本。
谢谢!
最佳答案
在没有看到完整页面的情况下,很难回答这个问题。然而我最好的猜测是,是的,你的 jQuery 库(最终)会被下载,下一个触发并访问 jQuery 对象的脚本会在 jQuery 脚本准备好之前完成。作为一个快速的概念证明,你可以尝试这个简单(但非常肮脏的黑客)来看看我是否走在正确的轨道上?
<script src="javascript/jquery-1.5.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
setTimeout(function(){alert(jQuery);},1000);
</script>
关于jQuery 没有定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5550456/