jquery curtain.js和fancybox-2键盘冲突

时间:2013-05-31 11:08:47

标签: jquery keyboard conflict fancybox-2

jquery脚本如下:

$(document).ready(function(){
    $('.fancybox').fancybox();

    $('.curtains').curtain({
        scrollSpeed: 300,
        controls: '.menu',
    })
})

使用jquery v1.7.1,插件如下所示。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="includes/fancybox/source/jquery.fancybox.js?v=2.1.4"></script>
<script src="includes/fancybox/source/helpers/jquery.fancybox-buttons.js?v=1.0.5"></script>
<script src="includes/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=1.0.7"></script>
<script src="includes/fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.5"></script>
<script src="js/curtain.js"></script>
<script src="js/myscript.js"></script>

实际上一切都很完美但是
当使用向上,向下,向左,向右键导航fancybox画廊(工作正常),
curtain.js在后台同时工作,改变各种页面/窗帘 有没有办法在浏览fancybox图库时“禁用”curtain.js?

1 个答案:

答案 0 :(得分:0)

根据curtain's documentation,你可以使用enableKeys来实现这个目的,这样你就可以在fancybox回调中重新启动你的窗帘脚本....试试这个(未经测试):

$(document).ready(function () {
    $('.curtains').curtain({
        scrollSpeed: 300,
        controls: '.menu'
    });
    $('.fancybox').fancybox({
        beforeShow: function () {
            $('.curtains').curtain({
                enableKeys: false // no keys while fancybox is open
            });
        },
        afterClose: function () {
            $('.curtains').curtain({
                scrollSpeed: 300,
                controls: '.menu',
                enableKeys: true // re-enable keys after fancybox is closed
            });
        }
    }); // fancybox
}) // ready