首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >插件:商品放大镜

插件:商品放大镜

作者头像
yuezhongbao
发布于 2019-03-13 07:29:50
发布于 2019-03-13 07:29:50
1.6K00
代码可运行
举报
文章被收录于专栏:前端实习日记前端实习日记
运行总次数:0
代码可运行

前言

这段代码我哩哩啦啦写了三天多,平时都有活今天忙里偷闲想起之前放大镜这个功能写了一半(我是分两块写的, 先是让module就是那个遮罩层能自由的在图片上跟随鼠标走,剩下的就简单了,遮罩层的left、top乘以一个固定系数就是‘放大图片’的left、top)。好了我的思路就是:只需要一张图片,这张图片像素要大一点,先以缩小的方式展示,然后鼠标移上去之后,在右侧有一个div,里面也放着一个src相同的img,只不过这个img不再是缩小的了。ok 这样就够了!

 写之前先复习一下:(如图)

记住上面的图 上码

HTML

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div class="content">
    <img class="small" src="img/01.png" width="300" />
    <div class="module"></div>
    <div class="large">
        <img src="img/01.png" alt=""/>
    </div>
</div>

css

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
div.content{
    overflow: hidden;
    position: relative;
}
img.small{
    float: left;
    border:1px solid blue;
}
div.large{
    float: left;
    width:300px;
    height:300px;
    overflow: hidden;
    position: relative;/**/
}
div.large>img{
    width:600px;
    display: none;
    position:absolute;/**/
}
div.module{
    width:150px;
    height:150px;
    background-color: rgba(255,255,255,.3);
    border:1px solid #666666;
    position:absolute ;
    top:0;
    left:0;
    display: none;
}
div.module:hover{
    cursor: move;
}

js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script>
   $('.content').mousemove(function(e){
       var mx = e.pageX-$(this).offset().left;
       var my = e.pageY-$(this).offset().top;
//           让鼠标在module正中间
     var left = mx-$('.module').width()/2;
       var top = my-$('.module').height()/2;
       if(mx>0&&my>0&&mx<$('.small').width()&&my<$('.small').height()){
//           防止溢出
       var L = (left<0)?0:(left>$('.small').width()-$('.module').width())?$('.small').width()-$('.module').width():left;
           var T = (top<0)?0:(top>$('.small').height()-$('.module').height())?$('.small').height()-$('.module').height():top;
           $('div.module').css('display','block').css('left',L+'px').css('top',T+'px');
//           显示放大照片
       var largeLeft = L*$('.large').width()/$('.module').width();//L*(300/150);
       var largeTop = T*$('.large').height()/$('.module').height();//T*(300/150);
       $('.large>img').css('display','block').css('left',0-largeLeft+'px').css('top',0-largeTop+'px');
        }
为什么left:0-largeLeft? 
因为你好好想想,你鼠标往左移动时候,div.large中的图片却是向右移动的,鼠标向右移动时,div.large中的图片是向左动的。
鼠标向上移动时,div.large中的图片是向下动的。
鼠标向下移动时,div.large中的图片是向上动的。
所以要用0减去!

       else{
           $('div.module').css('display','none');
//           隐藏放大照片
        $('.large>img').css('display','none');
       }
  })
 </script>

是不是很简单,我当时在避免.module溢出的时候费了些时间,

当时我很蠢单独把每个方向都拿出来并且在每个方向下面设置.module的left和top;导致鼠标在移动的时候代码判断使移动发生了冲突,并未达到我想要的效果。   想想虽然要每个方向都要考虑,但是没必要每判断一次给就给.module赋一次值。   把left和top单独拿出来考虑,最后在把left、top赋值给.module 如下,更好。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//                防止溢出
var L = (left<0)?0:(left>$('.small').width()-$('.module').width())?$('.small').width()-$('.module').width():left;
var T = (top<0)?0:(top>$('.small').height()-$('.module').height())?$('.small').height()-$('.module').height():top;
           $('div.module').css('display','block').css('left',L+'px').css('top',T+'px');
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-01-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【运筹学】线性规划 单纯形法 阶段总结 ( 初始基可行解 | 判定最优解 | 迭代 | 得到最优解 | 全流程详细解析 ) ★
参考 【运筹学】线性规划数学模型标准形式 ( 标准形式 | 目标函数转化 | 决策变量转化 | 约束方程转化 | 固定转化顺序 | 标准形式转化实例 ) 线性规划 普通形式 -> 标准形式 转化顺序说明 博客 , 先处理变量约束 , 再将不等式转为等式 , 最后更新目标函数 ;
韩曙亮
2023/03/28
2.3K0
【运筹学】线性规划 单纯形法 阶段总结 ( 初始基可行解 | 判定最优解 | 迭代 | 得到最优解 | 全流程详细解析 ) ★
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 )
在上一篇博客 【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 单纯形表 | 系数计算方法 | 根据系数是否小于等于 0 判定最优解 ) 博客中讲解了最优解判定原则 , 基本原理就是
韩曙亮
2023/03/28
2K0
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 )
【运筹学】线性规划数学模型 ( 单纯形法 | 第二次迭代 | 方程组同解变换 | 生成新单纯形表 | 计算检验数 | 最优解判定 | 线性规划解个数分析 )
上一篇博客 【运筹学】线性规划数学模型 ( 单纯形法 | 第一次迭代 | 方程组同解变换 | 计算新单纯形表 | 计算检验数 | 入基变量选择 | 出基变量选择 | 第三次迭代 | 得到最优解 ) 中进行了线性规划的第一次迭代 , 本篇博客中进行第二次迭代 ;
韩曙亮
2023/03/28
1.1K0
【运筹学】线性规划 图解法 ( 唯一最优解 | 无穷最优解 | 无界解 | 无可行解 )
大于等于 不等式 需要取直线 右侧区域 ; 小宇等于 不等式 需要取直线 左侧区域 ;
韩曙亮
2023/03/27
4.2K0
【运筹学】线性规划 图解法 ( 唯一最优解 | 无穷最优解 | 无界解 | 无可行解 )
【运筹学】线性规划数学模型 ( 单纯形法 | 迭代原则 | 入基 | 出基 | 线性规划求解示例 )
在上一篇博客 【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 ) 博客给出了一个线性规划的示例 , 并进行了 查找初始基可行解 , 和 判定该基可行解是否是最优解 ;
韩曙亮
2023/03/28
1.5K0
【运筹学】线性规划数学模型 ( 单纯形法 | 迭代原则 | 入基 | 出基 | 线性规划求解示例 )
【运筹学】线性规划数学模型 ( 单纯形法原理 | 单纯形法流程 | 查找初始基可行解 )
( 可行域是凸集 ) : 如果线性规划的问题 存在可行解 , 其 可行域 必定是 凸集 ;
韩曙亮
2023/03/28
1.4K0
【运筹学】线性规划数学模型 ( 单纯形法原理 | 单纯形法流程 | 查找初始基可行解 )
【运筹学】线性规划 人工变量法 ( 单纯形法总结 | 人工变量法引入 | 人工变量法原理分析 | 人工变量法案例 )
迭代转化 : 其将 在无穷多个可行解中迭代 , 转化为了 在有限个基可行解中进行迭代 ;
韩曙亮
2023/03/28
1.8K0
线性规划
这样的线性规划问题可以通过一些方法转化为一下 标准形线性规划问题(等式约束和决策变量非负)
爱编程的小明
2022/09/06
1.7K0
线性规划
运筹学单纯形法求解线性规划问题_运筹学单纯形法计算步骤
线性规划是研究在一组线性不等式或等式约束下使得某一线性目标函数取最大(或最小)的极值问题。
全栈程序员站长
2022/09/20
1.1K0
运筹学单纯形法求解线性规划问题_运筹学单纯形法计算步骤
【运筹学】线性规划 单纯形法 案例二 ( 案例解析 | 标准形转化 | 查找初始基可行解 | 最优解判定 | 查找入基变量与出基变量 | 第一次迭代 )
参考 【运筹学】线性规划数学模型标准形式 ( 标准形式 | 目标函数转化 | 决策变量转化 | 约束方程转化 | 固定转化顺序 | 标准形式转化实例 ) 线性规划 普通形式 -> 标准形式 转化顺序说明 博客 , 先处理变量约束 , 再将不等式转为等式 , 最后更新目标函数 ;
韩曙亮
2023/03/28
1.4K0
【运筹学】线性规划 单纯形法 案例二  ( 案例解析 | 标准形转化 | 查找初始基可行解 | 最优解判定 | 查找入基变量与出基变量 | 第一次迭代 )
【运筹学】线性规划数学模型 ( 单纯形法 | 第一次迭代 | 方程组同解变换 | 计算新单纯形表 | 计算检验数 | 入基变量选择 | 出基变量选择 )
上篇博客 【运筹学】线性规划数学模型 ( 单纯形法 | 迭代原则 | 入基 | 出基 | 线性规划求解示例 ) 讲解了单纯形法中选择了入基变量 , 与出基变量 , 找到了下一组迭代的可行基 , 下面开始继续进行后续操作 ;
韩曙亮
2023/03/28
1.2K0
【运筹学】线性规划数学模型 ( 单纯形法 | 第一次迭代 | 方程组同解变换 | 计算新单纯形表 | 计算检验数 | 入基变量选择 | 出基变量选择 )
【运筹学】线性规划 单纯形法 案例二 ( 第一次迭代 | 矩阵变换 | 检验数计算 | 最优解判定 | 入基变量 | 出基变量 )
【运筹学】线性规划 单纯形法 ( 案例解析 | 标准形转化 | 查找初始基可行解 | 最优解判定 | 查找入基变量与出基变量 | 迭代一 : 列出单纯形表) 后续博客 , 在上一篇博客中进行了 初始基可行解的检验数计算 , 最优解判定 , 入基变量与出基变量计算 , 并开始第一次迭代 ; 本篇博客中进行后续步骤解析 ;
韩曙亮
2023/03/28
8880
【运筹学】线性规划 单纯形法 案例二 ( 第一次迭代 | 矩阵变换 | 检验数计算 | 最优解判定 | 入基变量 | 出基变量 )
运筹学教学|十分钟快速掌握单纯形法(附C++代码及算例)
国庆节就要到了! 不如今儿咱就来讨论一下去哪玩耍吧! 南京?丽江?西安?…… 众人(汗):一个月前就没票了。。。 哦……那么,就只能……学习了…… 好巧不巧,运筹学似乎没学完吧? 前几日有童鞋跟小编说, 深夜看了咱公众号运筹学最大流、最短路算法的教学, 在修仙的道路上又有了质的飞跃! 戳此了解或复习: 运筹学教学 | 十分钟快速掌握最大流算法(附C++代码及算例) 运筹学教学 | 十分钟快速掌握最短路算法(附C++代码及算例) 但就是…… 信息量太大, 学完后有点虚, 快学不动了…… 古语云:持之以恒,有朝
用户1621951
2018/04/19
4.4K0
运筹学教学|十分钟快速掌握单纯形法(附C++代码及算例)
【运筹学】线性规划 人工变量法 ( 人工变量法案例 | 初始单纯形表 | 检验数计算 | 入基变量 | 出基变量 )
上一篇博客 【运筹学】线性规划 人工变量法 ( 单纯形法总结 | 人工变量法引入 | 人工变量法原理分析 | 人工变量法案例 ) 中 , 介绍了人工变量法 , 主要用于解决线性规划标准形式中 , 初始系数矩阵中没有单位阵的情况 , 并给出一个案例 , 本篇博客中继续使用人工变量法解解上述线性规划问题 ;
韩曙亮
2023/03/28
8610
【运筹学】线性规划 人工变量法 ( 人工变量法案例 | 初始单纯形表 | 检验数计算 | 入基变量 | 出基变量 )
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 可行解表示 | 目标函数推导 | 目标函数最大值分析 )
在上一篇博客 【运筹学】线性规划数学模型 ( 单纯形法原理 | 单纯形法流程 | 查找初始基可行解 ) 中 , 讲解到了使用单纯形法求解线性规划问题 , 需要解决以下三个主要问题 :
韩曙亮
2023/03/28
1.4K0
运筹学考题汇总(填空题+计算题)带答案
❃运筹学的工作程序:分析和表述问题、建立模型、求解模型和优化方案、测试模型及对模型进行必要的修正、建立对解的有效控制、方案的实施。
荣仔_最靓的仔
2021/02/02
2.7K0
运筹学考题汇总(填空题+计算题)带答案
运筹教学|快速掌握单纯形法(附java代码)
线性规划(Linear programming, 简称LP)是运筹学中研究较早、发展较快、应用广泛、方法较成熟的一个重要分支,它辅助人们进行科学管理、寻找线性约束条件下线性目标函数的极值。它广泛应用于军事作战、经济分析、经营管理和工程技术等领域,为合理地利用有限的人力、物力、财力等资源做出最优决策,提供科学依据。线性规划一般由决策变量、约束条件和目标函数三个部分组成。
用户1621951
2023/01/05
1.3K0
运筹教学|快速掌握单纯形法(附java代码)
运筹学教学|快速掌握人工变量法(Artificial variable method)(附Java代码及算例)
在之前的推文中,我们学习了单纯形法,顺利解决了约束条件都是“≤”的线性规划问题。同时为了讲解方便,我们都是使用约束方程系数矩阵中带单位矩阵、约束符号为“=”的算例。那肯定有人会问小编:更加常规的线性规划问题如何求解呢?为了响应群众号召,今天,小编就来带大家了解一下人工变量法!学会之后,“≤”“≥”或“=”型的约束的线性规划问题都顺利解决,妥妥的~
用户1621951
2021/03/16
6.1K1
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 单纯形表 | 系数计算方法 | 根据系数是否小于等于 0 判定最优解 )
在上一篇博客 【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 可行解表示 | 目标函数推导 | 目标函数最大值分析 ) 博客中讲解了最优解判定的推导过程 , 基本原理就是
韩曙亮
2023/03/28
1.1K0
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 单纯形表 | 系数计算方法 | 根据系数是否小于等于 0 判定最优解 )
【运筹学】运输规划 ( 运输规划问题的数学模型 | 运输问题引入 )
不同的产地运往不同的销地 , 运费不同 , 如何合理安排运输 , 能使总运费最少 ;
韩曙亮
2023/03/28
7100
推荐阅读
【运筹学】线性规划 单纯形法 阶段总结 ( 初始基可行解 | 判定最优解 | 迭代 | 得到最优解 | 全流程详细解析 ) ★
2.3K0
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 )
2K0
【运筹学】线性规划数学模型 ( 单纯形法 | 第二次迭代 | 方程组同解变换 | 生成新单纯形表 | 计算检验数 | 最优解判定 | 线性规划解个数分析 )
1.1K0
【运筹学】线性规划 图解法 ( 唯一最优解 | 无穷最优解 | 无界解 | 无可行解 )
4.2K0
【运筹学】线性规划数学模型 ( 单纯形法 | 迭代原则 | 入基 | 出基 | 线性规划求解示例 )
1.5K0
【运筹学】线性规划数学模型 ( 单纯形法原理 | 单纯形法流程 | 查找初始基可行解 )
1.4K0
【运筹学】线性规划 人工变量法 ( 单纯形法总结 | 人工变量法引入 | 人工变量法原理分析 | 人工变量法案例 )
1.8K0
线性规划
1.7K0
运筹学单纯形法求解线性规划问题_运筹学单纯形法计算步骤
1.1K0
【运筹学】线性规划 单纯形法 案例二 ( 案例解析 | 标准形转化 | 查找初始基可行解 | 最优解判定 | 查找入基变量与出基变量 | 第一次迭代 )
1.4K0
【运筹学】线性规划数学模型 ( 单纯形法 | 第一次迭代 | 方程组同解变换 | 计算新单纯形表 | 计算检验数 | 入基变量选择 | 出基变量选择 )
1.2K0
【运筹学】线性规划 单纯形法 案例二 ( 第一次迭代 | 矩阵变换 | 检验数计算 | 最优解判定 | 入基变量 | 出基变量 )
8880
运筹学教学|十分钟快速掌握单纯形法(附C++代码及算例)
4.4K0
【运筹学】线性规划 人工变量法 ( 人工变量法案例 | 初始单纯形表 | 检验数计算 | 入基变量 | 出基变量 )
8610
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 可行解表示 | 目标函数推导 | 目标函数最大值分析 )
1.4K0
运筹学考题汇总(填空题+计算题)带答案
2.7K0
运筹教学|快速掌握单纯形法(附java代码)
1.3K0
运筹学教学|快速掌握人工变量法(Artificial variable method)(附Java代码及算例)
6.1K1
【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 单纯形表 | 系数计算方法 | 根据系数是否小于等于 0 判定最优解 )
1.1K0
【运筹学】运输规划 ( 运输规划问题的数学模型 | 运输问题引入 )
7100
相关推荐
【运筹学】线性规划 单纯形法 阶段总结 ( 初始基可行解 | 判定最优解 | 迭代 | 得到最优解 | 全流程详细解析 ) ★
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验