vue某些页面禁止鼠标右键

// 禁止鼠标右键功能和ctrl + s。在main.js里面

Vue.directive('ban-save', {

    inserted(elem, vnode) {

        window.addEventListener('keydown', function (e) {

            if(e.keyCode == 83 && (navigator.platform.match('Mac') ? e.metaKey : e.ctrlKey)){

                e.preventDefault();

            }

        })

        document.oncontextmenu = function(){

            return false;

        }

        document.querySelector('iframe').onload = function () {

            // iframe 禁用 右键

            this.contentWindow.document.oncontextmenu = function(){

                return false;

            }

            // iframe 禁用 ctrl + s

            this.contentWindow.addEventListener('keydown', function (e) {

                if(e.keyCode == 83 && (navigator.platform.match('Mac') ? e.metaKey : e.ctrlKey)){

                    e.preventDefault();

                    e.stopPropagation();

                }

            }, true)

 }

    }

})    

然后再具体的页面最外层的div里面加上v-ban-save

你可能感兴趣的:(vue)