V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Ricoo

ios 微信上如何通过 js 禁止长按保存图片事件

  •  
  •   Ricoo · Sep 3, 2015 · 16568 views
    This topic created in 3889 days ago, the information mentioned may be changed or developed.

    如题,用了下面的代码来防止还是不行。
    //通用阻止事件冒泡方法
    function stopBubble (e ){

    // 如果传入了事件对象,那么就是非 ie 浏览器
    if (e&&e.stopPropagation ){
    //因此它支持 W3C 的 stopPropagation ()方法
    e.stopPropagation ();
    }else{
    //否则我们使用 ie 的方法来取消事件冒泡
    window.event.cancelBubble = true;
    }
    }

    //阻止浏览器的默认行为
    function stopDefault ( e ) {

    //阻止默认浏览器动作(W3C )
    if ( e && e.preventDefault )
    e.preventDefault ();
    //IE 中阻止函数器默认动作的方式
    else
    window.event.returnValue = false;
    return false;
    }

    26 replies    2015-09-04 09:57:19 +08:00
    Septembers
        1
    Septembers  
       Sep 3, 2015 via Android
    作为背景展现
    Shared
        2
    Shared  
       Sep 3, 2015
    放一个透明的层在前面, Flickr 原来就是这么弄的
    ytjfmv
        3
    ytjfmv  
       Sep 3, 2015
    没什么意义,只会让用户降低好感度
    des
        4
    des  
       Sep 3, 2015
    如果是为了防止用户保存图片那还是算了,用户表示我们可以截图
    ferock
        5
    ferock  
    PRO
       Sep 3, 2015 via Android
    @des
    learnshare
        6
    learnshare  
       Sep 3, 2015
    确实意义不大
    FrankFang128
        7
    FrankFang128  
       Sep 3, 2015 via Android
    没用
    rwalle
        8
    rwalle  
       Sep 3, 2015
    如果用户选择在浏览器中打开呢?
    ChiChou
        9
    ChiChou  
       Sep 3, 2015
    用 div 和 background-image ?
    首先 new Image () , onload 获得图片宽高,丢弃这个 image 对象,然后创建一个 div, style="background:XXXX"

    依然防止不了截图党
    nealv2ex
        10
    nealv2ex  
       Sep 3, 2015 via iPhone   ❤️ 1
    -webkit-touch-callout

    google 移动端 图片 保存
    L3au
        11
    L3au  
       Sep 3, 2015
    img {
    pointer-events: none;
    }
    Ricoo
        12
    Ricoo  
    OP
       Sep 3, 2015
    @ytjfmv 是在图片上添加了长按的事件,然后老是会出现保存的现象,用户体验很不好,不是为了防止保存图片哦
    Ricoo
        13
    Ricoo  
    OP
       Sep 3, 2015
    @des 不是防止截图,是事件冲突
    des
        14
    des  
       Sep 3, 2015
    @Ricoo 我觉得你可以改成别的,毕竟长按算是系统的功能。或者就直接弄成背景
    des
        15
    des  
       Sep 3, 2015
    @Ricoo 改成双击或者直接加按钮都比这个要好,为什么非要用长按呢?
    loading
        16
    loading  
       Sep 3, 2015 via iPhone
    react-canvas
    mogita
        17
    mogita  
       Sep 3, 2015
    切碎了拼图。啥图片啊给看还不让存。。
    OpooPages
        18
    OpooPages  
       Sep 3, 2015 via Android
    为了保护图片?
    Ricoo
        19
    Ricoo  
    OP
       Sep 3, 2015
    Ricoo
        20
    Ricoo  
    OP
       Sep 3, 2015
    @des 客户需要,长按录音功能
    des
        21
    des  
       Sep 3, 2015
    @Ricoo 你不了解一下为什么需要长按开始录音?
    反正我是觉得这个操作不直观,不信你问 V 友是不是这么想的。
    xxppxiaowei
        22
    xxppxiaowei  
       Sep 3, 2015
    用背景图呀。
    Ricoo
        23
    Ricoo  
    OP
       Sep 3, 2015
    @des
    1 、操作不直观,有提示如何操作
    2 、为什么需要,微信上录音功能是如此的,不希望又培养用户另一个使用习惯,成本高,而且还是用户已经用习惯微信录音功能的基础上,毕竟微信上录音功能用得还是蛮顺手的。
    sneezry
        24
    sneezry  
       Sep 4, 2015 via iPhone
    背景图片是王道
    liujiangbei
        25
    liujiangbei  
       Sep 4, 2015 via iPad
    逆天而行
    Ricoo
        26
    Ricoo  
    OP
       Sep 4, 2015
    图片添加了事件,所以不好用背景图
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5865 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 226ms · UTC 06:37 · PVG 14:37 · LAX 23:37 · JFK 02:37
    ♥ Do have faith in what you're doing.