jQuery.modal fancybox上不存在方法隐藏

时间:2017-11-08 09:00:04

标签: javascript jquery fancybox

我使用fancybox创建了iframe,但fancybox无法隐藏iframe,因为以下错误:

ncaught Error: Method hide does not exist on jQuery.modal
    at Function.error (jquery.js:253)
    at jQuery.fn.init.a.fn.modal (materialize.min.js:8)
    at Q (include.js?v=9.12.1:1)
    at apply_link (include.js?v=9.12.1:1)
    at a (include.js?v=9.12.1:1)
    at HTMLAnchorElement.<anonymous> (include.js?v=9.12.1:1)
    at HTMLUListElement.dispatch (jquery.js:4670)
    at HTMLUListElement.r.handle (jquery.js:4338)

我已经搜索了其他问题,我发现如果我将Jquery包含两次,就会出现此问题。所以我删除了materialize.js并且fancybox运行良好但是我需要包含materialize.js,因为我在我的ui中使用它。那我该怎么处理呢? 我正在使用yii2,这是我的配置:

public $js = [
        'js/jquery-3.2.1.min.js',
        'js/jquery.fancybox.min.js',
        'js/materialize.min.js',
        'js/script.js',
        'js/mediaelement-and-player.min.js',
        'js/flickity.pkgd.min.js',
        'js/select2.min.js',
        'js/select-category.js',
        'js/add_and_remove_text_fields.js',

        'js/iframe_upload.js'

    ];

这是我的HTML代码:

<input type="text" id="test_id" disabled>
    <a href="../filemanager/dialog.php?type=2&field_id=test_id&relative_url=1" class="btn iframe-btn"> SELECT</a>

这是我的JS代码:

$('.iframe-btn').fancybox({
    'width'     : 900,
    'height'    : 600,
    'type'      : 'iframe',
    'autoScale'     : false
});

0 个答案:

没有答案