如何隐藏JWPlayer播放按钮?

时间:2011-01-20 20:18:58

标签: javascript button hide playback jwplayer

如何隐藏JW Player中视频屏幕中心的播放按钮?

我正在使用播放器的5.4版,我使用他们自己的'JW Embedder'技术嵌入它。

我试过以下但没有运气:

jwplayer("myPlayer").setup({
   file: 'myMediaFile.mp4',
   image: 'myPosterFile.jpg',
   controlbar: 'bottom',
   icons: false
});

我已经在某个地方读过这个版本5.0可能已被删除,现在必须用皮肤完成。但是,我也读到它在版本5.1中返回了......?

10 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,解决方法是设置:

'controlbar': "none"

另外,我正在使用JW Player 5.5。

让我知道它是否成功。

答案 1 :(得分:3)

您正在寻找“显示”插件。根据需要隐藏。

jwplayer().getPlugin("display").hide();

答案 2 :(得分:2)

如果您没有使用自动播放,请将此添加到您的onPause,也可以添加到onReady事件:

jwplayer().getPlugin("controlbar").hide();

所以它看起来像这样:

jwplayer("container").setup({ 
    events: {
        onPause: function(event){
            jwplayer().getPlugin("controlbar").hide();
        }
    }
})

参考: http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12540/javascript-api-reference

检查插件部分。

答案 3 :(得分:2)

如果您将所有内容放在' '

之间,那么您的代码应该适用于JWplayer 5.10
jwplayer("myPlayer").setup({
   'file': 'myMediaFile.mp4',
   'image': 'myPosterFile.jpg',
   'controlbar': 'bottom',
   icons: 'false'
});

答案 4 :(得分:2)

对于JW Player v6 - HTML5播放器:

您可以使用CSS隐藏屏幕中央的播放按钮:

.jwplayer .jwdisplayIcon {
    display: none !important;
}

或隐藏控制栏中的播放按钮:

.jwplay {
    display: none;
}

答案 5 :(得分:1)

似乎'icons:false'选项确实有效,但不是HTML 5版本的播放器。希望他们能够在JW 5.4之后的任何版本中使用它。

答案 6 :(得分:1)

您可以使用Flex SDK编写Flash插件。我编写了一个继承自Sprite的基类来处理这个问题。

import flash.display.Sprite;
import flash.display.DisplayObject;
import com.longtailvideo.jwplayer.player.IPlayer;
import com.longtailvideo.jwplayer.view.components.ComponentButton;
import com.longtailvideo.jwplayer.view.interfaces.IControlbarComponent;

public class ExtendedPlugin extends Sprite
{       
    protected var _player:IPlayer;

    public function ExtendedPlugin() 
    {

    }       

    public function hideControlbarButton(buttonName:String):void {
        var controlbar:IControlbarComponent = _player.controls.controlbar;
        var button:DisplayObject = controlbar.getButton(buttonName);    
        button.height = 0;
        button.width = 0;
    }       
}

然后你可以通过继承这个类来编写你的插件。

public class MyPlugin extends ExtendedPlugin implements IPlugin 
{
     public function initPlugin(player:IPlayer, config:PluginConfig):void 
     {
          _player = player;
     }
}

如果您想隐藏播放和暂停按钮,例如,您将执行以下操作:

hideControlbarButton("play");
hideControlbarButton("pause");

您也需要正确的库导入。然后,您还需要在jwplayer参数中引用SWF。

答案 7 :(得分:1)

我通过在配置中添加'icons:false'来实现这一目标。但是,JWplayer API参考建议添加'controls:false',所以也尝试这样做。这是一个工作示例:http://www.longtailvideo.com/support/jw-player/29241/a-chromeless-player/

答案 8 :(得分:0)

皮肤可能很容易。您可以修改从longtail下载的现有皮肤。它们只是zip文件

以下是文档:http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/14/building-skins

基本上你只需从'display'目录中的skin zip文件中删除'playIcon.png'。它不会显示图标 - 因为它不存在!

你可能还必须删除'background.png' - 或者你只是得到一个空白的方块。

答案 9 :(得分:0)

以下是我提出的情况:

我们的想法是完全禁用控件,然后在用户点击时重新启用它们。

        var jwHandle = jwplayer(videoID).setup(videoConfig);//Set b/c of internal reasons

        //Then when configuring
        autoplay : "false",
        controls : "false", //disable the controls(including play icon)
        events : {
                   onDisplayClick : function(event){
                        //re-enable controls
                        jwHandle.setControls(true);
                       //play the video
                        jwHandle.play();
                    }
                }     
          });

使用版本6.10。上面的其他答案对我不起作用,可能是因为版本更改。我找到的唯一另一种方法是将skin.xml播放图标更改为透明图像,但更多涉及过程并且更倾向于" hacking"。