jquery插件实现图片对比

 更新时间:2021年04月30日 08:06:00   作者:阿飞超努力  
这篇文章主要为大家详细介绍了jquery插件实现图片对比,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了jquery插件实现图片对比的具体代码,供大家参考,具体内容如下

很常见的一个效果,做起来不难

效果如下

代码部分

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>做图片对比</title>
  <script src="js/jquery-3.4.1.min.js"></script>
  <style>
   *{
    margin: 0px;
    padding: 0px;
    user-select: none;
   }
   .div{
    border: 1px solid lightgray;
    width: 400px;
    height: 200px;
    margin: 10px;
    float: left;
    position: relative;
   }
   .img1{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 50%;
   }
   .img2{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 0;
   }
   .img1,.img2{
    background-position: center center;
    background-size: 400px 200px;
    background-repeat: no-repeat;
   }
   .img1{
    background-position-x: 0;
   }
   .img2{
    background-position-x: 100%;
    filter: invert(100%);
   }
   .bar{
    position: absolute;
    top: 0;
    bottom: 0;
    right:-4px;
    width: 8px;
    background-color: gray;
    cursor: ew-resize;
    opacity: 0.2;
   }
   .stop{
    pointer-events: none;
   }
  </style>
 </head>
 <body>
  <div class="div">
   <div class="img1" style="background-image: url(img/1.jpg);">
    <div class="bar" data-flag="0"></div>
   </div>
   <div class="img2" style="background-image: url(img/1.jpg);"></div>
  </div>
  <div class="div">
   <div class="img1" style="background-image: url(img/2.jpg);">
    <div class="bar" data-flag="0"></div>
   </div>
   <div class="img2" style="background-image: url(img/2.jpg);"></div>
  </div>
 </body>
</html>
<script>
 $(document).ready(function(){
  $(".bar").mousedown(function(){
   $(this).parent().addClass("stop");
   $(this).parent().next().addClass("stop");
   $(this).attr("data-flag","1")
  })
  $(".div").mousemove(function(e){
   var temp = $(this).find('.bar').attr("data-flag");
   if(temp=="1"){
    var w = $(this).width();
    var x = e.offsetX;
    var p = parseFloat((x/w).toFixed(2))*100;
    $(this).children(".img1").css('width',p+'%');
    $(this).children(".img2").css('left',p+'%');
   }
  })
  $(document).mouseup(function(){
   $(".img1,.img2").removeClass("stop");
   $(".bar").attr("data-flag","0")
  })
 })
</script>

思路解释

感觉很简单,就是俩图作为背景图片然后控制他的布局位置,控制容器的宽高就行了
需要做适应性优化的还有背景图大小的控制,当然父容器不会变化就不会出问题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • jQuery中ztree 点击文本框弹出下拉框的实例代码

    jQuery中ztree 点击文本框弹出下拉框的实例代码

    这篇文章主要介绍了jQuery中ztree 点击文本框弹出下拉框的实例代码 的相关资料,需要的朋友可以参考下
    2017-02-02
  • 为你的网站增加亮点的9款jQuery插件推荐

    为你的网站增加亮点的9款jQuery插件推荐

    如今,jQuery插件众多,满足各种各样的应用需求。 在这篇文章中,我收集了9款很棒的插件,最喜欢的是Sausage内容分页插件,作者想法特别新颖!希望你能从中找到自己需要的插件。
    2011-05-05
  • jquery 通过ajax请求获取后台数据显示在表格上的方法

    jquery 通过ajax请求获取后台数据显示在表格上的方法

    今天小编就为大家分享一篇jquery 通过ajax请求获取后台数据显示在表格上的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • jQuery中:file选择器用法实例

    jQuery中:file选择器用法实例

    这篇文章主要介绍了jQuery中:file选择器用法,实例分析了:file选择器的功能、定义及选取类型为file的<input>元素的使用技巧,需要的朋友可以参考下
    2015-01-01
  • JQuery困惑—包装集 DOM节点

    JQuery困惑—包装集 DOM节点

    我使用了JQuery进行了一段时间的前端开发,它让我从选择需要操作的元素痛苦中解放出来,因为提供的选择功能是如此的强大。 同时在开发过程中我被一个问题困惑了很久,也许在别人看来这根本不是问题!
    2009-10-10
  • 用jquery统计子菜单的条数示例代码

    用jquery统计子菜单的条数示例代码

    统计子菜单条数的方法有很多,在本文为大家详细介绍下使用jquery是如何实现的,感兴趣的朋友不要错过
    2013-10-10
  • 解决Jquery鼠标经过不停滑动的问题

    解决Jquery鼠标经过不停滑动的问题

    在鼠标经过的时候不停的显示隐藏html元素,正确的写法应该是下面这样的,需要的朋友可以参考下
    2014-03-03
  • jQuery实现带幻灯的tab滑动切换风格菜单代码

    jQuery实现带幻灯的tab滑动切换风格菜单代码

    这篇文章主要介绍了jQuery实现带幻灯的tab滑动切换风格菜单代码,可实现点击菜单项进行对应内容的滑动切换功能,涉及jquery鼠标事件及页面元素属性的动态操作技巧,需要的朋友可以参考下
    2015-08-08
  • JQuery分屏指示器图片轮换效果实例

    JQuery分屏指示器图片轮换效果实例

    这篇文章主要介绍了JQuery分屏指示器图片轮换效果实现方法,实例分析了jQuery图片轮播操作的相关技巧,需要的朋友可以参考下
    2015-05-05
  • jQuery获取单击节点对象的方法

    jQuery获取单击节点对象的方法

    这篇文章主要介绍了jQuery获取单击节点对象的方法,涉及jQuery操作鼠标事件与页面元素的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-06-06

最新评论