0

我只是想用新的 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
}});
..............
..............
})});
4

1 回答 1

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
        }
    });
});

查看文档以获取 v2.x 的完整选项集。

于 2013-05-21T18:11:25.287 回答