zoukankan      html  css  js  c++  java
  • 关于禁止图片拖动的问题

    最近在做一个公司的抢红包项目,会在页面上下红包雨,玩家点击红包来玩抢红包,但是当玩家在急促的点击中很容易触发图片的拖动,而在火狐浏览下浏览器下又有默认的图片拖动手势支持,火狐一拖动图片就会在新窗口打开图片,而IE而更BT,直接打开图片下载窗口,严重影响用户体验。

    一开始想用css来解决,给图片加上img{ pointer-events: none;} ,在火狐下可以解决,但是在IE下不起作用,后来几翻折腾,还是用JS来解决,给图片或者其父级都加上ondragstart="return false;"

    <a class='redbagclass' ondragstart='return false;' href='javascript:void(0);'><img src='' /></a>

    但同时又遇到一个问题,在点击图片不小心拖动的时候,会选中下面的图片跟文字,总感觉怪怪的,百度几翻后发现给BODY加上onselectstart="return false;" unselectable="on" style="-moz-user-select:none;"可以解决这样的问题,unselectable为IE准备,onselectstart为Chrome、Safari准备,-moz-user-select是FF的。但是考虑到这个红包雨效果是现官网的每个页面都是需要增加的,通过PHP引入的,同时给BODY加感觉也会影响整站的选择功能,太危险,于是考虑到给我的整个红包模块外包一层DIV,再给DIV绑定以上属性,至此解决。

    <div class="redbgcon">
            <div class="lockbgclass" id="lockbg" onselectstart="return false;" unselectable="on" style="-moz-user-select:none;">
            </div>
            <div class="people" id="peopleid" style="display:none">
                <img src="redbag/walk0.png" ondragstart="return false;">
            </div>
            <div class="timeleft" id="counttimeid" style="display:none">3</div>
        </div>

    个人知识有限,如有更好的方法望不吝分享,共同学习,共同进步!

  • 相关阅读:
    【一篇文章就够了】Apollo
    【一篇文章就够了】Redis入门
    使用IDEA学习廖雪峰官方Git教程
    SourceTree的使用介绍
    【黑马旅游网】总结
    Entity Framework数据迁移命令使用总结
    leetcode editor
    IDEA个性化配置
    mysql5.7驱动(tableau,excel)
    正则表达式(1)
  • 原文地址:https://www.cnblogs.com/xwwin/p/4772680.html
Copyright © 2011-2022 走看看