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-09-03 20:02:12 +08:00 · 15831 次点击
    这是一个创建于 3368 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    依然防止不了截图党
    nealv2ex
        10
    nealv2ex  
       2015-09-03 22:01:04 +08:00 via iPhone   ❤️ 1
    -webkit-touch-callout

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