`
sbear
  • 浏览: 46146 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

JS+CSS实现图片放大预览效果

CSS 
阅读更多
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JS+CSS实现图片放大预览效果(js图片放大预览鼠标滑过的任意位置_365CSS.CN</title>
<script language="JavaScript">
<!--
var srcX = 1024; //原图大小,可以任意设置
var srcY = 768;
var bigX = 300; //预览窗大小,可以任意设置
var bigY = 225;
var smallX = 300; //缩略图宽度
var smallY = srcY * smallX / srcX;
var viewX = bigX / srcX * smallX; //预览范围
var viewY = bigY / srcY * smallY;
var bl = srcX / smallX;//缩小比例
var border = 1; //边框
window.onload=function (){
        head.innerHTML="JS+CSS实现图片放大预览效果,鼠标可以滑动图片任意地方";
        smallpic.width=smallX;
        smallpic.height=smallY;
        bigpic.width=srcX;
        bigpic.height=srcY;
        view.style.width=viewX;
        view.style.height=viewY;
        smallbox.style.borderWidth=border;
        bigbox.style.borderWidth=border;
        if (window.event){
                smallbox.style.width=smallpic.offsetWidth+border*2;
                smallbox.style.height=smallpic.offsetHeight+border*2;
                bigbox.style.width=bigX+border*2;
                bigbox.style.height=bigY+border*2;
        }else{
                smallbox.style.width=smallpic.offsetWidth;
                smallbox.style.height=smallpic.offsetHeight;
                bigbox.style.width=bigX;
                bigbox.style.height=bigY;
        }
        move(event);
}
function move(e){
        var e = window.event?window.event:e;
        var iebug = 0;
        if (window.event){
                var vX = e.offsetX - viewX/2;
                var vY = e.offsetY - viewY/2;
        }else{
                var vX = e.pageX - viewX/2 - smallbox.offsetLeft - border;
                var vY = e.pageY - viewY/2 - smallbox.offsetTop - border;
                iebug = 2;
        }
        if (vX < 0) vX = 0;
        if (vY < 0) vY = 0;
        if (vX > smallX - viewX - iebug) vX = smallX - viewX - iebug;
        if (vY > smallY - viewY - iebug) vY = smallY - viewY - iebug;
        bigpico.style.marginLeft = - vX * bl 
        bigpico.style.marginTop = - vY * bl 
        view.style.left = vX + smallbox.offsetLeft + border;
        view.style.top = vY + smallbox.offsetTop + border;
}
//-->
</script>
<style type="text/css">
<!--
*{padding:0;margin:0}
img{display:block;}
#smallbox{border:1px #c33 solid;float:left;width:0;height:0;overflow:hidden}
#bigbox{border:1px #c33 solid;width:0px;height:0px;float:left;overflow:hidden}
#view{border:1px #ddd solid;width:0px;height:0px;position:absolute}
#head{text-align:center;line-height:40px;font:bold 16px/40px;color:red}

//-->
</style>


<div id="head"></div>
<div id="smallbox">
<img src="1.jpg" 
     name="smallpic" 
     width="300"  
     height="300"  
     border="0" 
     id="smallpic"
     onmousemove="move(event)"   
     onmouseover="document.getElementById('bigbox').
                  style.display='';
                  document.getElementById('view').
                  style.display=''"
     onmouseout="document.getElementById('bigbox')
                 .style.display='none';
                 document.getElementById('view').
                 style.display='none'">

</div>

<div id="bigbox"  style="display:none">
  <div id="bigpico">
    <img src="1.jpg" name="bigpic" width="300" height="300" 
      border="0" id="bigpic">
  </div>
</div>
<div id="view" onmousemove="move(event) "style="display:none"></div>

分享到:
评论

相关推荐

    HTML+css+JavaScript实现放大镜效果

    在网页设计中,实现放大镜效果可以为用户提供更好的产品预览体验,特别是在电商网站上,用户可以通过放大镜功能查看商品的细节。这个效果通常由HTML、CSS和JavaScript三者结合来实现。接下来,我们将深入探讨如何...

    jquery+css图片缩放放大预览特效

    【标题】"jQuery+CSS图片缩放放大预览特效"是一种常见的网页交互设计技术,用于提升用户体验,特别是在展示产品图片或图像时。这种特效允许用户点击图片后,图片会以放大预览的方式显示,增强视觉效果,使得细节更加...

    javascript+css实现放大镜效果

    总结来说,这个项目通过结合JavaScript和CSS,实现了用户在浏览小图时可以实时预览商品细节的放大镜效果。`fdj.js`处理交互逻辑,`fdj.css`定义样式,`test.html`是演示页面,`images`目录存储图片资源。通过这种...

    jQuery+CSS实用图片收缩与放大效果插件.rar

    《jQuery+CSS实现图片收缩与放大效果详解》 在网页设计中,图片的展示效果往往对用户体验有着重要的影响。一种常见的交互方式是图片的收缩与放大效果,这能为用户提供更直观、更具互动性的视觉体验。本文将深入探讨...

    jQuery+CSS3图片放大镜预览代码

    这个“jQuery+CSS3图片放大镜预览代码”就是实现这一功能的一个实例。下面我们将深入探讨这个功能的工作原理、涉及的技术以及如何实现。 首先,我们来看标题中的关键词“jQuery”。jQuery是一个广泛使用的...

    js图片代码,JS+CSS实现图片特效

    2. 鼠标悬停效果:通过CSS改变图片的透明度或颜色,或者使用JS实现图片放大预览。 3. 图片懒加载:JS检测图片是否进入可视区,只有当图片可见时才加载,优化页面加载速度。 4. 图片网格布局:CSS Flexbox或Grid可以...

    js+css3图片3D倾斜布局点击弹窗放大预览代码

    在本文中,我们将深入探讨如何使用JavaScript和CSS3来实现一个具有3D倾斜效果的图片布局,以及当用户点击图片时弹出放大预览并支持幻灯片切换的功能。这个项目是一个很好的示例,展示了现代Web开发中的动态交互设计...

    jQuery+CSS 用图片收缩与放大 插件

    总的来说,"jQuery+CSS 用图片收缩与放大 插件" 是一种结合了JavaScript动态性和CSS视觉效果的解决方案,它让网页图片变得更加互动,增强了用户的浏览体验。通过理解和应用这些技术,开发者可以创建出更多具有吸引力...

    jquery+css实现世界地图放大缩小效果

    标题中的“jquery+css实现世界地图放大缩小效果”是指使用JavaScript库jQuery以及CSS样式来创建一个交互式的世界地图,该地图具有缩放和平移功能,同时在鼠标悬停时提供提示信息。这个技术通常用于数据可视化、地理...

    js+css=图片浏览效果

    "js+css=图片浏览效果"这个主题涉及到JavaScript(js)和层叠样式表(css)两种关键技术,它们共同作用于创建动态且交互性强的图片预览功能。下面将详细解释如何使用这两种技术实现鼠标滤过、鼠标点击后出现放大的...

    JS+html仿淘宝图片放大镜预览效果

    "JS+HTML仿淘宝图片放大镜预览效果"是一种常见的实现方式,它利用JavaScript动态操作DOM元素和CSS样式,结合HTML结构,模拟出淘宝网站上图片放大镜的效果。这种效果允许用户在不离开当前页面的情况下,通过鼠标悬停...

    基于HTML5+CSS3+JavaScript实现放大镜功能.zip

    为了实现放大效果,可以利用`transform`属性,配合`scale`函数调整视窗内的图像比例。同时,可以使用`transition`属性实现平滑过渡,增加视觉效果。CSS3的伪类和媒体查询也可以帮助我们处理不同设备或屏幕尺寸下的...

    jQuery+CSS图片浮动层效果.zip_jQuery+CSS图片浮动层效果

    在实际应用中,这种图片浮动层效果可以应用于各种场景,如产品预览、图片放大查看、弹出式信息提示等。通过调整CSS样式和jQuery代码,我们可以自定义浮动层的位置、大小、透明度、关闭按钮等元素,以适应不同的设计...

    js 产品图片放大预览

    在JavaScript(JS)开发中,实现产品图片的放大预览是一项常见的需求,特别是在电商网站上。用户点击小图后能够预览大图,且可以进行局部放大的功能,能极大地提升用户体验。这篇博客《js 产品图片放大预览》探讨了...

    HTML5+CSS3+JavaScript 网页设计与制作期末综合大作业 杭帮美食五个页面(附完整答案和学生用要求及素材)

    图片欣赏页面可以利用JavaScript创建图片预览或者放大镜效果。至于会员注册页面,JavaScript可以实现表单验证,确保用户输入的有效性,比如邮箱格式检查、密码强度检测等,同时也可以发送AJAX请求,实现无刷新的数据...

    图片放大预览 效果 jsp

    综上所述,实现“图片放大预览效果”的核心在于结合JSP、JavaScript(特别是JqZoom插件)和Java后端技术。通过合理的前端布局和后端处理,我们可以创建出交互性强、性能优良的图片预览功能。在实际项目中,还可以...

    Html + CSS +JS做的图片截取效果

    例如,`Cropper.js`是一个专门用于图片裁剪的JavaScript库,它封装了复杂的图片处理逻辑,使得实现图片截取效果变得更加简单。 综上所述,HTML、CSS和JavaScript共同协作,为用户提供了一种直观、易用的图片截取和...

    js实现图片放大预览效果--很好很酷的效果

    在JavaScript的世界里,实现图片的放大预览效果是一项常见的需求,尤其在网页设计和交互体验中。这个功能可以让用户在不离开当前页面的情况下,轻松查看图片的细节,提高用户体验。以下我们将深入探讨如何使用...

    淘宝图片放大JS效果

    淘宝图片放大JS效果是一种在网页上实现图片预览和放大功能的技术,常见于电商网站,如淘宝网。这种效果能够提升用户体验,使用户在不离开当前页面的情况下,能清晰查看商品图片的细节,有助于增强购买决策。下面我们...

    jq+css3悬停效果 jquery+css3缩略图悬停效果.zip

    "jq+css3悬停效果 jquery+css3缩略图悬停效果.zip" 文件包含了一种利用jQuery和CSS3技术实现的缩略图悬停效果,这种效果通常用于图片展示、产品目录或任何需要动态视觉反馈的场景。接下来,我们将深入探讨这个主题,...

Global site tag (gtag.js) - Google Analytics