我正在尝试在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文件中调整大小 包含在我打电话给弹出窗口的页面上。
有什么问题?
答案 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()
。