Fancybox未定义

时间:2012-03-24 10:06:28

标签: jquery fancybox

我正在尝试在fancybox 2弹出窗口中创建我自己的下一个和上一个箭头。 它可以很好地包含它们,但是当我点击它们时,我得到$ .fancybox是未定义的。 我正在使用ajax打开一个页面。

这是我的fancybox初始代码:

$(".popup").fancybox ({

maxWidth    : 1200,
maxHeight   : 550,
width       : '90%',
height      : '90%',
autoSize    : false,
openEffect  : 'none',
closeEffect : 'none',
nextEffect: 'none',
prevEffect: 'none',
arrows: false,
padding: 0,
scrolling: 'no',
afterShow: function (e) {

var toolbar = "<div id='next'>Next</div><div id='prev'>Prev</div>";

$(".fancybox-inner").append(toolbar);

}

});

这是我的下一个和上一个代码:

$("#next").live ("click", function() {

$.fancybox.next();

});

$("#prev").live ("click", function() {

$.fancybox.prev();

});

这两个代码示例都在我所拥有的名为popup.js的javascript文件中调整大小 包含在我打电话给弹出窗口的页面上。

有什么问题?

1 个答案:

答案 0 :(得分:2)

我宁愿做

var toolbar = "<div id='next'><a href="javascript:$.fancybox.next();">Next</a></div><div id='prev'><a href="javascript:$.fancybox.prev();">Prev</a></div>";

忘了你的.live()脚本。

BTW,从jQuery 1.7开始,.live()方法已被弃用。请改用.on()。对于旧版本的jQuery,使用.delegate()优先于.live()