7

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

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

我试过以下没有运气:

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

我在某处读到这可能已在 5.0 版中被删除,现在必须使用皮肤来完成。但是,我还读到它在 5.1 版中返回...?

4

10 回答 10

3

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

'控制栏':“无”

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

让我知道它是否成功。

于 2011-07-22T08:37:22.627 回答
3

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

jwplayer().getPlugin("display").hide();
于 2012-01-03T20:09:43.523 回答
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

检查插件部分。

于 2011-09-13T14:38:24.480 回答
2

如果您将所有内容放在两者之间,您的代码应该可以与 JWplayer 5.10 一起使用' '

jwplayer("myPlayer").setup({
   'file': 'myMediaFile.mp4',
   'image': 'myPosterFile.jpg',
   'controlbar': 'bottom',
   icons: 'false'
});
于 2012-07-04T11:48:20.840 回答
2

对于 JW Player v6 - HTML5 播放器:

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

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

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

.jwplay {
    display: none;
}
于 2015-03-20T21:18:11.387 回答
1

You can write a flash plugin using the Flex SDK. I have written a base class that inherits from Sprite to handle this.

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;
    }       
}

Then you can write your plugin by inheriting from this class.

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

If you wanted to hide the play and pause buttons for example you would do the following:

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

You will need the correct library imports for this as well. You will then also need to reference the SWF in the jwplayer parameters.

于 2012-10-09T20:03:31.020 回答
1

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

于 2013-04-09T13:23:03.683 回答
1

'icons: false' 选项似乎确实有效,但不适用于 HTML 5 版本的播放器。希望他们能在 JW 5.4 之后的任何版本中解决这个问题。

于 2011-01-22T23:46:42.853 回答
0

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

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

基本上,您只需从“显示”目录中的皮肤 zip 文件中删除“playIcon.png”。它不会显示图标 - 因为它不存在!

您可能还必须删除“background.png” - 否则您只会得到一个空白方块。

于 2011-03-18T06:26:28.443 回答
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 播放图标更改为透明图像,但是涉及更多过程并且更倾向于“黑客”。

于 2015-03-24T19:52:12.500 回答