Actionscript 3 VideoJS Swf删除右键单击菜单
我想禁用上下文菜单,我从未使用过actionscript,经过一些搜索后,我找到了禁用上下文菜单的代码:Actionscript 3 VideoJS Swf删除右键单击菜单,actionscript-3,video.js,Actionscript 3,Video.js,我想禁用上下文菜单,我从未使用过actionscript,经过一些搜索后,我找到了禁用上下文菜单的代码: stage.addEventListener(MouseEvent.RIGHT_CLICK, function(e:MouseEvent):void {}); stage.addEventListener(MouseEvent.CONTEXT_MENU, function(e:MouseEvent):void {}); Mouse.hide(); 我想知道如何在VideoJS.as中应用
stage.addEventListener(MouseEvent.RIGHT_CLICK, function(e:MouseEvent):void {});
stage.addEventListener(MouseEvent.CONTEXT_MENU, function(e:MouseEvent):void {});
Mouse.hide();
我想知道如何在VideoJS.as中应用它
下面是ActionScript中的源代码
“我发现这段代码用于禁用上下文菜单…我想知道如何在VideoJS.as
中应用它。”
打开。。。查找以下代码(第57行之后):
改成
// add content-menu version info
/*
var _ctxVersion:ContextMenuItem = new ContextMenuItem("VideoJS Flash Component v" + VERSION, false, false);
var _ctxAbout:ContextMenuItem = new ContextMenuItem("Copyright © 2014 Brightcove, Inc.", false, false);
var _ctxMenu:ContextMenu = new ContextMenu();
_ctxMenu.hideBuiltInItems();
_ctxMenu.customItems.push(_ctxVersion, _ctxAbout);
this.contextMenu = _ctxMenu;
*/
this.addEventListener(MouseEvent.RIGHT_CLICK, function(e:MouseEvent):void {});
this.addEventListener(MouseEvent.CONTEXT_MENU, function(e:MouseEvent):void {});
现在尝试编译VideoJS的新SWF输出。如果工作正常,右键单击时应该没有响应。上面的代码未经测试(没有时间),但它是正确的代码逻辑
让我知道这是否是一个有效的解决方案。您如何在项目中使用VideoJS类?您想调整VideoJS.as还是在项目代码中?@FrédericCox我正在使用
grunt mxmlc
并编译SWF文件。但是如何在代码中实例化VideoJS类?如果您执行类似var videoJS:videoJS=new videoJS()的操作;然后,为rightClick和contextMenu添加eventlisteners,并使用evt.preventDefault或设置一个空的自定义contextMenu。那可能行得通。如果你有一个代码示例可以帮助我测试代码。它很好用。因此,您对您的问题有了正确的答案,因为关于在.as
文件中更改代码的位置。请将其标记为已解决,并就任何其他问题提出新问题(您的新错误与您的MXMLC编译器设置有关,我的答案或视频JS没有任何错误)…您收到这些错误是因为在FlashPlayer 11.2之后添加了允许上下文菜单
和右键单击
的AS3更新。您的编译器可能正在为较旧的Flash Player版本生成输出(swf)。我用FlashIDE测试了这个问题,只有当我选择输出到一些较旧的SWF版本(即10.1版)时,我才会得到完全相同的错误。我不使用Grunt MXMLC,但如果它使用FLEX SDK,只需转到它的安装文件夹并找到这些文件夹Frameworks\Libs\Player
现在在Player
文件夹中看到了什么?(应该是以Flash Player版本作为名称的子文件夹)。
// add content-menu version info
/*
var _ctxVersion:ContextMenuItem = new ContextMenuItem("VideoJS Flash Component v" + VERSION, false, false);
var _ctxAbout:ContextMenuItem = new ContextMenuItem("Copyright © 2014 Brightcove, Inc.", false, false);
var _ctxMenu:ContextMenu = new ContextMenu();
_ctxMenu.hideBuiltInItems();
_ctxMenu.customItems.push(_ctxVersion, _ctxAbout);
this.contextMenu = _ctxMenu;
*/
this.addEventListener(MouseEvent.RIGHT_CLICK, function(e:MouseEvent):void {});
this.addEventListener(MouseEvent.CONTEXT_MENU, function(e:MouseEvent):void {});