封装jQuery插件的步骤
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
*{ margin:0; padding:0;} #min{ height:350px; width:350px; border:1px solid #ccc; position:relative; top:20px; left:20px; cursor:move;}
#kuai{ height:175px; width:175px; background:#FC3; position:absolute; left:0; top:0; opacity:0.5; display:none;} #max{ width:400px; height:400px; border:1px solid #ccc; position:absolute; left:400px; top:20px; overflow:hidden; display:none}
#max img{ position:absolute;}
</style>
<script src="jquery1.9.1.js"></script>
<script>
$(function (){ $("#min").hover(function (){ $("#kuai").show();
$("#max").show(); },function (){
$("#kuai").hide();
$("#max").hide();
});
$("#min").mousemove(function (event){ var disX=event.pageX-$("#min").offset().left-$("#kuai").width()/2;
var disY=event.pageY-$("#min").offset().top-$("#kuai").height()/2; var maxWidth=$("#min").width()-$("#kuai").width(); var maxHeight=$("#min").height()-$("#kuai").height();
if (disX<=0){
disX=0;
}
else if (disX>maxWidth){
disX=maxWidth;
}
if (disY<=0){
disY=0;
}
else if(disY>maxHeight){ disY=maxHeight;
} $("#kuai").css({
left:disX,
top:disY
});
var scaleL=disX/maxWidth;
var scaleT=disY/maxHeight;
$("#max img").css({
left:-scaleL*($("#max img").width()-$("#max").width()),
top:-scaleT*($("#max img").height()-$("#max").height())
});
});
});
</script>
</head>
<body>
<div id="min">
<img src="min.jpg"/>
<div id="kuai"></div>
</div>
<div id="max">
<img src="max.jpg"/>
</div>
</body>
</html>
var $fang=$('<div id="min">
<img src="max.jpg"/>
<div id="kuai"></div>
</div>
<div id="max">
<img src="max.jpg"/>
</div>');
var $fang=$('<div id="min">'+
'<img src="'+$(".oImg").attr("src")+'"/>'+
'<div id="kuai"></div>'+
'</div>'+
'<div id="max">'+
'<img src="'+$(".oImg").attr("src")+'"/>'+
'</div>');
$(".oImg").before($fang);
<script>
function fang(obj){
var $fang=$('<div id="min">'+
'<img src="'+obj.attr("src")+'"/>'+
'<div id="kuai"></div>'+
'</div>'+
'<div id="max">'+
'<img src="'+obj.attr("src")+'"/>'+
'</div>');
obj.before($fang);
obj.remove();
$("#min").hover(function (){
$("#kuai").show();
$("#max").show(); },function (){
$("#kuai").hide();
$("#max").hide();
});
$("#min").mousemove(function (event){ var disX=event.pageX-$("#min").offset().left-$("#kuai").width()/2;
var disY=event.pageY-$("#min").offset().top-$("#kuai").height()/2; var maxWidth=$("#min").width()-$("#kuai").width(); var maxHeight=$("#min").height()-$("#kuai").height();
if (disX<=0){
disX=0;
}
else if (disX>maxWidth){
disX=maxWidth;
}
if (disY<=0){
disY=0;
}
else if(disY>maxHeight){ disY=maxHeight;
} $("#kuai").css({
left:disX,
top:disY
}); // 10/100
var scaleL=disX/maxWidth;
var scaleT=disY/maxHeight; $("#max img").css({
left:-scaleL*($("#max img").width()-$("#max").width()),
top:-scaleT*($("#max img").height()-$("#max").height())
});
});
}
$(function (){
fang($(".oImg"));
});
</script>
$.fn.extend({
fang:function(){
var $fang=$('<div id="min">'+
'<img src="'+obj.attr("src")+'"/>'+
'<div id="kuai"></div>'+
'</div>'+
'<div id="max">'+
'<img src="'+obj.attr("src")+'"/>'+
'</div>');
obj.before($fang);
obj.remove();
$("#min").hover(function (){ $("#kuai").show();
$("#max").show(); },function (){
$("#kuai").hide();
$("#max").hide();
});
$("#min").mousemove(function (event){ var disX=event.pageX-$("#min").offset().left-$("#kuai").width()/2;
var disY=event.pageY-$("#min").offset().top-$("#kuai").height()/2; var maxWidth=$("#min").width()-$("#kuai").width(); var maxHeight=$("#min").height()-$("#kuai").height();
if (disX<=0){
disX=0;
}
else if (disX>maxWidth){
disX=maxWidth;
}
if (disY<=0){
disY=0;
}
else if(disY>maxHeight){ disY=maxHeight;
} $("#kuai").css({
left:disX,
top:disY
}); // 10/100
var scaleL=disX/maxWidth;
var scaleT=disY/maxHeight; $("#max img").css({
left:-scaleL*($("#max img").width()-$("#max").width()),
top:-scaleT*($("#max img").height()-$("#max").height())
});
});
}
})
*{ margin:; padding:;} #min{ height:350px; width:350px; border:1px solid #ccc; position:relative; top:20px; left:20px; cursor:move;}
#min img{
width: 350px;
height: 350px;
}
#kuai{ height:175px; width:175px; background:#FC3; position:absolute; left:; top:; opacity:0.5; display:none;} #max{ width:400px; height:400px; border:1px solid #ccc; position:absolute; left:400px; top:20px; overflow:hidden; display:none}
#max img{ position:absolute;}
$.fn.extend({
fang:function(){
var oSrc=$('<link rel="stylesheet" type="text/css" href="fang.css">')
$("head").eq(0).append(oSrc);
var $fang=$('<div id="min">'+
'<img src="'+$(this).attr("src")+'"/>'+
'<div id="kuai"></div>'+
'</div>'+
'<div id="max">'+
'<img src="'+$(this).attr("src")+'"/>'+
'</div>');
$(this).before($fang);
$(this).remove();
$("#min").hover(function (){ $("#kuai").show();
$("#max").show(); },function (){
$("#kuai").hide();
$("#max").hide();
});
$("#min").mousemove(function (event){ var disX=event.pageX-$("#min").offset().left-$("#kuai").width()/2;
var disY=event.pageY-$("#min").offset().top-$("#kuai").height()/2; var maxWidth=$("#min").width()-$("#kuai").width(); var maxHeight=$("#min").height()-$("#kuai").height();
if (disX<=0){
disX=0;
}
else if (disX>maxWidth){
disX=maxWidth;
}
if (disY<=0){
disY=0;
}
else if(disY>maxHeight){ disY=maxHeight;
} $("#kuai").css({
left:disX,
top:disY
}); // 10/100
var scaleL=disX/maxWidth;
var scaleT=disY/maxHeight; $("#max img").css({
left:-scaleL*($("#max img").width()-$("#max").width()),
top:-scaleT*($("#max img").height()-$("#max").height())
});
});
}
})
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script src="jquery1.9.1.js"></script>
<script type="text/javascript" src="fang.js"></script>
<script>
$(function (){
$(".oImg").fang();
});
</script>
</head>
<body>
<img src="max.jpg" class="oImg"/>
</body>
</html>
封装jQuery插件的步骤的更多相关文章
- jQuery插件编写步骤详解
如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论下jq ...
- 封装jquery插件
最近要到使用别的jquery插件,但部分功能并不能满足,为满足功能,只能对插件进行修改来满足,要修改插件,先要了解插件如何封装, 明白了如何封装插件,才能更好修改插件:如何封装插件? 1.插件封装类型 ...
- 封装jQuery插件实现TAB切换
先上效果图: 直接上代码: index.html <!DOCTYPE html> <html lang="en"> <head> <met ...
- angular封装jquery插件(组件)
http://www.phloxblog.in/jquery-plugin-angular-js-directive-clean-html-approach/#.VaCWL9yUemJ
- jquery插件封装
HTML <!DOCTYPE html> <html> <head> <title></title> <style> .page ...
- 简易jQuery插件
之前写过jQuery插件的笔记 如何用jQuery封装插件 我一直觉得前面讲了一大堆闭包和三种插件封装模式有点冗余,那篇笔记我直到记录到后面才发现这事情很简单,想来想去还是觉得网上的一些文章把事情搞复 ...
- 什么?你还不会写JQuery 插件
前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论 ...
- 写JQuery 插件 什么?你还不会写JQuery 插件
http://www.cnblogs.com/Leo_wl/p/3409083.html 前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui ...
- 写jQuery插件
如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论下jq ...
随机推荐
- UIView的clipsTobounds属性
这里的clip是修剪的意思,bounds是边界的意思,合起来就是:如果子视图的范围超出了父视图的边界,那么超出的部分就会被裁剪掉.该属性在实际工程中还是非常实用的,必须要了解清楚.
- WindowsForm 流
流 包括输入流代码 输出流代码 流: 输入流: string filename = openFileDialog1.FileName; //通过读入流进行文件读取 StreamReader sr = ...
- vim中使用gdb。
引用文章A:http://easwy.com/blog/archives/advanced-vim-skills-vim-gdb-vimgdb/ 引用介绍:使用vimgdb来完成gdb的嵌入. 需要的 ...
- Fragment之一:Fragment入门
参考自张泽华视频 Fragment是自Android3.0后引入的特性,主要用于在不同的屏幕尺寸中展现不同的内容. Fragment必须被嵌入Activity中使用,总是作为Activity的组成部分 ...
- struts2开发经验小结(method="{1}"等)
这里的{1}表示接收前面action里通过通配符传来的值,例如你配置的是<action name="*Crud" class="example.Crud" ...
- Filter与Servlet的区别和联系
Filter Servlet 接口 实现Filter接口 实现Servlet接口 使用步骤 1.创建类,继承接口 2.实现方法 init() doFilter() destroy() 3.配置WEB- ...
- QNDTU外壳及开发板
昨天从淘宝上淘来了个DTU外壳,翻出来之前的STM32开发板和GPRS模块开发板,今天准备复习一下开发板,把裸板跑起来. 晒一下装备: 两块开发板: 51n ...
- qt 自动完成LineEdit
原地址:http://www.cppblog.com/biao/archive/2009/10/31/99873.html ---------------------------------- ...
- 2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客
2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客 腰差和胸臀差的应用(2009-06-16 19:24:57)转载▼标签:校园 前面已经对这两个概念作了简单的讲解.这两个概 ...
- ILSpy,DLL反编译工具,学习与了解原理的好帮手
你是否一直苦于找到了好的dll却只知道怎么使用而不知道其原理. 你是否在使用一个dll的时候发现它在一些参数时报错了却没法解决. 你是否想成为一个优秀的.net开发,成为一个优秀的系统制造者. 那你需 ...