Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未定义幻灯片放映动画_Javascript_Jquery_Drupal - Fatal编程技术网

Javascript 未定义幻灯片放映动画

Javascript 未定义幻灯片放映动画,javascript,jquery,drupal,Javascript,Jquery,Drupal,我正在工作的js中存在以下问题: 未捕获引用错误:未定义幻灯片放映\u动画 作用 引用的功能是: function slideshow_animate() { if(!animation.auto_animate) return; var next_slide = $('.item-slide.active').next(); if(!next_slide.length) { next_slide = $('#item-slide-1');

我正在工作的js中存在以下问题:

未捕获引用错误:未定义幻灯片放映\u动画 作用

引用的功能是:

    function slideshow_animate() {
    if(!animation.auto_animate) return;

    var next_slide = $('.item-slide.active').next();
    if(!next_slide.length) {
        next_slide = $('#item-slide-1');
    }

    next_slide.click();
}
我有另一个网站,如果我正在工作,但在这个应用程序中,我似乎与slideshowa_animate有问题,附上完整的代码供参考:

(function ($, Drupal) {

Drupal.behaviors.lek7_zen_theme = {
    attach: function(context, settings) {

        $(document).ready(function(){


            var i = 1;
            $('.item-slide').each(function(key, value) {
                $(value).attr('id', 'item-slide-'+i);
                i++;
            });

            $('.slide_caption').hide();
            $('#item-slide-1 > .slide_caption').show();
            $('#item-slide-1').addClass('active');
            $('.item-slide').not('.active').children('.slide_image_slice').show();

        });


        var animation = {
            'auto_animate': true,
            'auto_animate_delay': 8000,
            'auto_animate_id': '',
            'caption_speed': 'fast',
            //'panel_speed': 'slow',
            'panel_speed': 1000,
            'panel_easing': 'easeInOutCubic'
        }

        $('.item-slide')
            .bind('open', function(){
                if(! $(this).hasClass('open')){
                    $(this).next().trigger('open');
                    $(this).addClass('open');
                    $(this).animate({right: "-=769px"}, animation.panel_speed, animation.panel_easing, function(){display_slices();});
                }
                else{
                    $(this).prev().trigger('close');
                }
                $(this).siblings().removeClass('active');
                $(this).addClass('active');
                setTimeout(function(){hide_slices()},1);


                display_caption();
            })
            .bind('close', function(){
                if($(this).hasClass('open')){
                    $(this).removeClass('open');
                    $(this).animate({right: "+=769px"}, animation.panel_speed, animation.panel_easing, function(){display_slices();});
                    $(this).prev().trigger('close');
                }
            });

        $('.item-slide')
            .hoverIntent(
            function() {
                animation.auto_animate = false;
                trigger_accordion($(this));
            },
            function() {
                animation.auto_animate = true;
                clearInterval(animation.auto_animate_id);
                animation.auto_animate_id = setInterval('slideshow_animate()', animation.auto_animate_delay);
            }
        )
            .click(function() {
                trigger_accordion($(this));
            });

        animation.auto_animate_id = setInterval('slideshow_animate()', animation.auto_animate_delay);


function trigger_accordion(itemSlide) {
    if(!(itemSlide.is(':animated'))) {
        itemSlide.trigger('open');
    }
}

function display_caption() {
    $('.slide_caption').each(function() {
        if(!($(this).parent().hasClass('active'))) {
            $(this).fadeOut('fast', function() {
                $('.item-slide.active > .slide_caption').fadeIn(animation.caption_speed);
            });
        }
    });
}

function hide_slices() {
    $('.slide_image_slice').each(function() {
        if($(this).parent().hasClass('active')) {
            $(this).fadeOut('fast');
        }
    });
}

function display_slices() {
    $('.slide_image_slice').each(function() {
        if(!$(this).parent().hasClass('active') && !$(this).is(":visible")) {
            $(this).fadeIn('fast');
        }
    });
}

function slideshow_animate() {
    if(!animation.auto_animate) return;

    var next_slide = $('.item-slide.active').next();
    if(!next_slide.length) {
        next_slide = $('#item-slide-1');
    }

    next_slide.click();

}
    }
};

})(jQuery, Drupal);
当您使用animation.auto_animate_id=setInterval'slideshow_animate',animation.auto_animate_delay;函数在全局范围内求值,其中函数slideshow_animate不存在,因为它位于闭包范围内

试一试


谢谢你的帮助!
animation.auto_animate_id = setInterval(slideshow_animate, animation.auto_animate_delay);