0

为我的网站安装灯箱后,我的评论停止工作。我查看了代码并将<head>(灯箱附带的)中的 javascript 链接移动到 Wordpress-Buddypress 附带的 javascript 链接上方。在我来自 Lightbox 的 javascript 链接位于 Wordpress 附带的 javascript 链接之下之前。

进行切换后,评论开始在我的网站上再次起作用,但现在灯箱不起作用。

当我使用 Firebug 查找错误时,我收到此错误。

$("#videogallery a[rel]").overlay is not a function

该代码来自“videolightbox.js”,这是我的灯箱附带的一个文件。

我对这个问题做了很多研究,我想我可能需要使用jQuery.noConflict();,但我不知道如何使用它?我在看这个链接

但我似乎无法让它工作,因为我不知道如何使用它。我也尝试将所有替换为$()jQuery()但这并没有解决我的问题。

4

4 回答 4

1

但我不知道如何使用它?

var $j = jQuery.noConflict();

并且您的代码将从 $(selector) 更改为 $j(selector)

这里给出了很多例子 http://api.jquery.com/jQuery.noConflict/

于 2012-01-23T23:25:43.537 回答
0

对你的回答

$=jQuery.noConflict();

现在你可以使用 $('#id').css(...);

于 2012-01-23T23:27:28.107 回答
0

该错误可能导致其余代码未执行,.overlay不是函数意味着.overlay不是函数并且$工作正常。

var test; test("#videogallery a[rel]").test()
//TypeError: test is not a function <-- You would see this if $ wasn't working

var test = function(){return {};};
test("#videogallery a[rel]").test();
//TypeError: test("#videogallery a[rel]").test is not a function <-- You see this because .overlay isn't working

它只是意味着你试图.overlay在它存在之前打电话。

于 2012-01-23T23:35:06.460 回答
0

需要仔细考虑的一件事是脚本加载顺序并注意 JQuery 的重复加载。在某些(希望很少见)情况下,您可以加载 JQuery,设置一些使用它的代码,然后重新加载 JQuery,这会丢弃第一次加载后设置的事件。

我知道我曾经遇到过这种情况,但我不记得导致它发生的细节。

于 2012-01-23T23:19:14.763 回答