我正在使用名为SexyLightbox的增强版Lightbox.它使用jQuery作为其框架.当我初始化它时,当Lightbox没有运行时,我会在常规的invervals上出现此错误,当我尝试显示图片时,我会无限次地出现此错误:
Error: $ is undefined Source File: http://bagelstreet.se/sexylightbox/sexylightbox.v2.3.jquery.min.js Line: 12
初始化脚本如下:
UPDATE所以-我已经更换了图书馆,我使用的解压 sexylightbox的版本.FireBug指出了jQuery.bind()函数的错误,特别是在粗体线上:
jQuery.bind = function(object, method){ var args = Array.prototype.slice.call(arguments, 2); return function() { var args2 = [this].concat(args, $.makeArray( arguments )); return method.apply(object, args2); }; };
正在使用的jQuery版本是1.3.2.
对可能发生的事情的任何想法?
解决了
问题是SexyLightbox作者代码的编码错误.在$定义之前,在jQuery.bind()上使用$.
sexylightbox.v2.3.jquery.min.js中的某些内容导致$
设置为undefined.如果在加载该文件之前设置断点,$
则正确为别名jQuery
.我会尝试加载尚未通过Packer运行的sexylightbox.v2.3版本.这样你就可以正确地使用Firebug来弄清楚发生了什么.