js怎么禁止输入框粘贴

通过js禁止右键,禁止粘贴还是没办法完全禁止用户复制粘贴操作,有些用户通过手机带的输入法进行粘贴,js没办法禁止。
我想了一个办法,就是监听输入框改变事件,获取到输入文字的长度,把长度存到localStorage里面。判断本次内容的长度是否比上次内容的长度大5以上,如果是,就说明用户是在复制粘贴,就给个提示"禁止粘贴",并且把粘贴的内容去掉。

    <textarea name="content" id="" cols="30" rows="10">
       
    </textarea>

    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script>
        $(function(){
        //页面加载完毕后触发事件
        $("textarea[name='content']").bind('input propertychange', function() {
            var content = $.trim($(this).val());
            var prevlength = localStorage.getItem('prevlength') ? localStorage.getItem('prevlength') : 0;
            if(content.length - prevlength >=5 ){
                alert('禁止粘贴');
                content = content.substr(0,prevlength);
                $(this).val(content);
               
            }else{
                localStorage.setItem('prevlength',content.length);
            }
        });
       
    });
    </script>

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: