Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.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 使用jquery、froogaloog和wordpress控制Vimeo iFrame时出现问题_Javascript_Jquery_Wordpress_Vimeo_Froogaloop - Fatal编程技术网

Javascript 使用jquery、froogaloog和wordpress控制Vimeo iFrame时出现问题

Javascript 使用jquery、froogaloog和wordpress控制Vimeo iFrame时出现问题,javascript,jquery,wordpress,vimeo,froogaloop,Javascript,Jquery,Wordpress,Vimeo,Froogaloop,我一直在一个朋友网站上工作,试图修复他的flexslider的实现,这样,如果正在播放一个vimeo视频,用户切换到另一个幻灯片,它就会暂停该视频。在这种情况下,我在使用froogaloop和jquery时遇到了问题。以下是我一直在尝试的一些代码: (function () { jQuery('.flexslider').flexslider({ slideshowSpeed: slideshowDelay+"000", directionNav: false

我一直在一个朋友网站上工作,试图修复他的flexslider的实现,这样,如果正在播放一个vimeo视频,用户切换到另一个幻灯片,它就会暂停该视频。在这种情况下,我在使用froogaloop和jquery时遇到了问题。以下是我一直在尝试的一些代码:

(function () { jQuery('.flexslider').flexslider({
        slideshowSpeed: slideshowDelay+"000",  
        directionNav: false,                    
        animation: "fade" , 
        after: function (slider)
        {
            console.log("next");
            var currentSlide = slider.currentSlide;
            var slides = slider.slides;

            jQuery(slides).each( function (i) 
            {
                if(i != currentSlide)
                {
                    var slide = jQuery(slides[i]);
                    jQuery(slide).attr({class : 'slide_selector'})
                    var vimeo = jQuery('.slide_selector iframe');
                    if(vimeo.length !== 0)
                    {

                        var src = jQuery(vimeo).attr('src')
                        var controlObject = {"method" : "pause" }; 
                        var domWindow = vimeo[0].contentWindow;
                        jQuery(vimeo[0]).bind('ready' , function 
                        {
                            console.log("PlayerId: "+ player_id)
                            froogaLoop(player_id).api('pause');
                        });
                    }
                }
            })                                  
        }
    });
    showProject(projectSlug);
});)
因此,这根本不起作用。我读到我应该在Froogaloop框架中使用init函数,但运行Froogaloop.fn.init(实现它的唯一方法)告诉我,我在其中输入的任何东西都没有getAttributes属性。这一切都相当令人困惑。我想我的主要问题是如何用froogaloop初始化这些Iframe


注意。在我的版本库中,我用froogaLoop替换了$f,因为$f似乎会干扰wordpress。

我在这里看到一些问题

(虽然没有显示,但我假设您正确地包含了froogaloop js文件,否则您不会看到getAttributes错误。)

我将向您展示一个代码片段,我刚刚为我的网站做了一个可以工作的代码片段,您可以将它合并到您自己的代码中

以下是我的网站上加载vimeo播放器的相关html:

<iframe id="vvq-62-vimeo-1" src="http://player.vimeo.com/video/50138878?title=1&byline=1&portrait=0&fullscreen=1&api=1"></iframe>
这将初始化froogaloop播放器:

player = $f(iframe);
如果在控制台中对此进行测试,那么此时您应该看到:

e.fn.e.init
然后,您可以运行任何api命令,例如此命令以播放视频:

player.api('play');
仅供参考,当您尝试在无效对象上运行froogaloop api时,会出现getAttributes错误。查看上面的代码,不清楚player_id设置在哪里,所以这可能就是问题所在

mkm

player.api('play');