Fancybox v2.1.4不起作用 - $未定义

时间:2013-05-21 13:10:46

标签: jquery fancybox fancybox-2

我只是想用新的v2.1.4替换旧版本的Fancybox。不幸的是,它不起作用。错误:

ReferenceError: $ is not defined

有什么想法吗?

<script type="text/javascript" src="http://static.mydomain.com/scripts/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="http://static.mydomain.com/scripts/fancybox/fancybox.js"></script>

<a class="oforms" href="/my/forms/form.php?id=10">Open form 10</a>

脚本文件:

jQuery(function($){$(document).ready(function(){
$(".oforms").fancybox({
'autoDimensions': true,
'transitionIn': 'none',
'transitionOut': 'none',
'onComplete': function() {$("#fancybox-inner").css({'overflow-x':'hidden'});}, 
'ajax' : {
cache : false
}});
..............
..............
})});

1 个答案:

答案 0 :(得分:0)

如果您计划升级版本,则必须升级API选项。 v2.x中的选项是新的,与以前的版本不兼容。

此外,您需要指定type内容,因此请尝试使用此脚本(我注释掉旧选项):

jQuery(document).ready(function ($) {
    $(".oforms").fancybox({
        autoSize: true, // 'autoDimensions': true,
        openEffect: "none", //'transitionIn': 'none',
        closeEffect: "none", // 'transitionOut': 'none',
    // 'onComplete': function() {$("#fancybox-inner").css({'overflow-x':'hidden'});}, 
        afterShow: function () {
            // your function
            // you may not need to mess with overflow, use scrolling instead
        },
        type: "ajax",
        ajax: {
            cache: false
        }
    });
});

检查 documentation 以获取v2.x的完整选项集。