gpt4 book ai didi

javascript - 使用 Labjs 我得到一个 "$ is not defined"错误但是 js 仍然有效,不知道为什么 :(

转载 作者:行者123 更新时间:2023-11-30 06:41:40 29 4
gpt4 key购买 nike

我正在使用 LABjs 进行一些并行 js 加载。

但是,由于某些奇怪的原因,我在调试控制台中收到“$ is not defined”错误。

我的代码如下:

<script>
$LAB.script("http://use.typekit.com/blah.js").script("/assets/js/libs/jquery-1.5.1.min.js").script("/assets/js/libs/basic-jquery-slider.min.js").wait().script("/assets/js/libs/modernizr-1.7.min.js").script("/assets/js/libs/jquery.watermarkinput.js").wait().script("/assets/js/libs/jquery-ui-1.8.14.custom.min.js").wait().script("/assets/js/effects.js").wait(function(){});

在我的 effects.js 中我有。

try{Typekit.load();}catch(e){}
$('#banner').bjqs({
'width' : 980,
'height' : 212,
'showMarkers' : false,
'showControls' : false,
'centerMarkers' : false
});

一切正常,但出现上述错误。我不明白为什么 jquery 对象应该存在(并且必须存在,因为一切正常)那么为什么会出现错误?

有什么想法吗?我确定我正确使用了 labjs,但我认为这个错误让 IE7 感到不安:(

我应该在后面的代码中添加一个 $(document).ready 吗?但这似乎让 labjs 感到不安。

提前感谢您的帮助!

最佳答案

试试这个:

<script>
$LAB
.script("http://use.typekit.com/blah.js")
.script("/assets/js/libs/jquery-1.5.1.min.js").wait() // <---- ADD THIS .wait()
.script("/assets/js/libs/basic-jquery-slider.min.js").wait()
.script("/assets/js/libs/modernizr-1.7.min.js")
.script("/assets/js/libs/jquery.watermarkinput.js").wait()
.script("/assets/js/libs/jquery-ui-1.8.14.custom.min.js").wait()
.script("/assets/js/effects.js").wait(function(){});
</script>

一些其他注意事项:

  1. 删除最后的 empty/noop .wait() 函数,(不再)需要它。
  2. modernizr 不应由 LABjs 加载...您应该根据 IIRC 所说的文档加载它,它应该在正常的 <script> 中。标记在文档的顶部。
  3. 我猜是 .wait() 中的一部分你在这条链上的是不必要的。例如,我的猜测是在“jquery-slider”和“jquery-watermark”之后不需要它们 script()调用,因为我敢打赌它们彼此不依赖,因此可以以任何 ASAP 顺序运行,只要它们确保在 jQuery 完成后运行(这就是我在中发表评论的原因添加到 .wait() 调用中的代码段!)

关于javascript - 使用 Labjs 我得到一个 "$ is not defined"错误但是 js 仍然有效,不知道为什么 :(,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10765565/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com