Fancybox 1.2.5 callbackOnShow-我有一些语法错误

Fancybox 1.2.5 callbackOnShow - I have some syntax errors

本文关键字:语法 错误 callbackOnShow- Fancybox      更新时间:2023-09-26

我正试图在框加载时运行一个函数,对于v1.2.5,它似乎应该是callbackOnShow属性。这是我的代码,我有一个语法错误,但由于我是一个傻瓜,我很难弄清楚。

$("a#inline").fancybox({
            'hideOnContentClick': false,
            'autoDimensions': false,
            'frameWidth': 932,
            'frameHeight': 496,
            'padding': '0',
            'overlayOpacity': '0.7',
            'callbackOnShow': $(function () {
$('#palette').on('mouseover', 'a', function (event) {
    $('#PaletteColorName').text("Color: " + event.target.title);
});
$('#palette').on('mouseleave', 'a', function () {
    $('#PaletteColorName').text("Color: ");
});
});

欢迎使用可能的替代品。这是我试图在fancybox中发挥作用的小提琴版本。

JS Fiddle

这里有一些内容。你不应该把选项括在引号里。

$("a#inline").fancybox({
   hideOnContentClick: false,
   autoDimensions: false
   //etc...
});

接下来,您没有完全正确地指定回调函数。通过编写这样的函数:callBack: $(function() { ... });该函数将实际执行。你不想那样。。。您希望函数在某个事件上运行。所以你应该做的是:

$('a#inline').fancybox({
    callbackOnShow: function() {
        $('#palette').on('mouseover', 'a', function(event) {
            //...
        });
    }
});

我不确定在你使用的文本编辑器中是这样,还是在你把代码粘贴到这里时格式被搞砸了,但虽然不是绝对必要的,但使用适当的缩进是一个非常好的主意。它使发现语法错误变得容易得多。

最后,如果您还没有Firebug的话,您应该考虑为Firefox安装它。它将帮助您找出哪里有语法错误。