[LayaAirIDE3]如何TextArea屏蔽掉右键的快捷菜单

设计一个打字程序,使用了TextArea,打包成WEB后,发现右键可以弹出快捷菜单,用户可以使用复制和粘贴,怎么把这个屏蔽掉,最好是 ctrl+c,Ctrl+v也能屏掉就好了。
已邀请:

LayaAir大为

赞同来自:

    preventContextMenu: any = null;
    onAwake(): void {

        //禁用/启用鼠标右键
        this.disableRightClick();
        //this.enableRightClick();

        //禁用Ctrl+c,Ctrl+v
        this.owner.on("keydown", this, (event: KeyboardEvent) => {
            if (event.ctrlKey && event.key === "c") {
                event.preventDefault();
            }
            if (event.ctrlKey && event.key === "v") {
                event.preventDefault();
            }
        });
    }

    disableRightClick() {
        this.preventContextMenu = function (e: any) {
            e.preventDefault();
        };
        document.addEventListener('contextmenu', this.preventContextMenu);
        console.log('右键菜单已禁用');
    }

    enableRightClick() {
        if (this.preventContextMenu) {
            document.removeEventListener('contextmenu', this.preventContextMenu);
            console.log('右键菜单已启用');
        }
    }
您好,您可以在TextArea上添加一个脚本,并将这段代码粘贴进去,就可以实现您需要的效果
如果需要启用鼠标右键,可以调用enableRightClick()

 

要回复问题请先

商务合作
商务合作