V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Ricoo
V2EX  ›  JavaScript

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

  •  
  •   Ricoo · 2015 年 9 月 3 日 · 16407 次点击
    这是一个创建于 3789 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    依然防止不了截图党
    nealv2ex
        10
    nealv2ex  
       2015 年 9 月 3 日 via iPhone   ❤️ 1
    -webkit-touch-callout

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