js之图片放大

/*
*
* JQUERY 之简易放大镜插件
* Author:翅膀的初衷 4585839
* Date:2011-11-16
*
demo:
<input type="text" value="c-img.jpg" id="source" />
<script>
var div = ‘<div id="ShowBigPictureBox" style=" position:absolute; top:20px; left:250px; display:none; background-repeat:no-repeat; background-color:#fff; width:500px;"></div>‘;
$("body").append(div);
$("#source").JNMagnifier({
renderTo:"#ShowBigPictureBox"
});
</script>
*/
(function ($) {
$.fn.JNMagnifier = function (targetContainer) {

if (targetContainer && targetContainer.renderTo) {
if (typeof (targetContainer.renderTo) == "string") {
targetContainer.renderTo = $(targetContainer.renderTo);
}
} else {
return;
}
var _img_org_ = this;

var __w = 0;
var __h = 0;

var __left = this.offset().left;
var __top = this.offset().top;

if (this.offsetParent()) {
__left += this.offsetParent().offset().left;
__top += this.offsetParent().offset().top;
}

var _move_x = 0;
var _move_y = 0;

var _val_w = (targetContainer.renderTo.width() / 2);
var _val_h = (targetContainer.renderTo.height() / 2);

_img_org_.mouseover(function () {

targetContainer.renderTo.html(‘<img src="‘ + _img_org_.val() + ‘" style="position:absolute; max-width:100%" id="JNMagnifierrenderToImg" />‘);
targetContainer.renderTo.show();
var timer = setInterval(function () {
__w = $("#JNMagnifierrenderToImg").width() / _img_org_.width();
__h = $("#JNMagnifierrenderToImg").height() / _img_org_.height();
if (__w > 0) {
clearInterval(timer);
}
}, 100);
});

_img_org_.mouseout(function () {
targetContainer.renderTo.hide();
});

_img_org_.mousemove(function (e) {
_move_x = 0 - Math.round((document.documentElement.scrollLeft + e.clientX - __left) * __w - _val_w);
_move_y = 0 - Math.round((document.documentElement.scrollTop + e.clientY - __top) * __h - _val_h);
//$("#JNMagnifierrenderToImg").css({"left":_move_x + "px ","top":_move_y + "px"});
});
}
})(jQuery);

时间: 2024-08-27 03:58:05

js之图片放大的相关文章

js+jquery+html实现在三种不通的情况下,点击图片放大的效果

js+jquery+html实现在三种不通的情况下,点击图片放大的效果. 三种情况分别是:图片的父元素宽高固定;  图片的宽高固定;  图片的父元素宽固定,高度不固定 第一种情况:图片的父元素宽高固定: 1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="UTF-8"> 6 <title>Title</title> 7

推荐两款简单好用的图片放大jquery插件

一.zoomfiy.js 推荐可以从这里下载 使用说明: 使用该jquery 插件引入该插件的js:zoomfiy.js 或 min引入该插件的css:zoomfiy.css 或 min前后顺序都可js里加入 调用插件的函数 $('这里写要放大的图片').zoomify();如果有ajax 新生成的图片,要在ajax里再次调用一遍该函数. 二.zoomooz.js 推荐这里下载 使用说明: 这个插件有很多种 放大功能,可进行优雅的缩放操作,特别适用相册网站.这个图片方法不是 单独图片跳脱出来的放

jQuery图片放大

jQuery图片放大 <!DOCTYPE HTML> <html> <head> <title></title> <script src="jquery-1.7.1.min.js"></script> <style> #d{ width:300px; height:300px; background-color:pink; color:white; display:none; positio

jQuery Lightbox图片放大预览

简介:jQuery Lightbox图片放大预览代码是一款可以在用户点击页面中的小图片时,将该图片的高清版本以Lightbox的方式放大显示在页面的中间,提高用户的体验度. 效果展示 http://hovertree.com/texiao/jqimg/6/ 效果图如下: 源码下载:http://hovertree.com/h/bjaf/hdhgnftp.htm HTML文件代码: <!DOCTYPE html> <html lang="zh"> <head

图片放大居中

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>图片放大</title> <meta name="description" content=&

图片放大源码

<a path="images/be830324916476d709ef7f1e547042d0.jpg" class="preview" href="http://www.17sucai.com/">jquery选项卡插件制作标签标题内容slider滑动切换特效</a><Br /><Br /> <a path="images/39c118198047e3b7da820d162e71

jQuery实现网站图片放大效果

实现效果:当鼠标指向商品图片时,图片会自动放大. 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>文字放大</title> 6 7 <script type="text/javascript" src="../../scripts/jquery-1.7.2.js"><

浅谈CSS和JQuery实现鼠标悬浮图片放大效果

对于刚刚学习网页前台设计的同学一定对图片的处理非常苦恼,那么这里简单的讲解一下几个图片处理的实例. 以.net为平台,微软的Visual Studio 2013为开发工具,当然前台技术还是采用CSS3和HTML,Java的小伙伴不要绕道~~~ 言归正传,那么我们首先要完成什么样的图片处理呢? 一.CSS3图片的放大 css3中,有一个属性transform,官方的解释是:允许向元素应用2D或3D的转换.这些转换当然就包含旋转.缩放.移动或倾斜了.有兴趣的同学可以继续了解http://www.w3

jQuery照片伸缩效果,不是单纯的图片放大缩小,不影响其他元素的布局

之前在网上看到这种特效,无奈当时没有收藏网址,导致后来一度不知道这个特效是怎么实现的.今天特意在网上搜罗了一下,果然功夫不负有心人,被我找到了. 我也努力过自己尝试着写: 但只是单纯的图片放大,而且还影响了图片周围的元素的布局(因为图片放大占据了更大的空间). 后来发现要灵活巧妙的运用overflow和position这两个属性,就能达到目的.其实我觉得CSS(CSS3)中的overflow和position(顺带的top,bottom,left,right)简直是做网页特效无解的组合,当然还是