jQuery初学之拖曳图片
最近学了下jQuery,一开始接触jQuery的“链”式方法时,就感觉像是在写正则表达式一样,果然jQuery源码中有很多非常复杂的正则表达式。
写了段拖曳图片的代码,算是作业吧,类似于Google Map中的拖动地图。
jQuery真的很强大,几行代码就能达到这样的功能,再也不用考虑浏览器的兼容问题。
dragimgae.js代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | $(function(){ var dragImage=$(".dragImage"); dragImage.mousedown(function(e){ var x1,y1; var img=$("img",this); var offset=img.position(); x1=e.clientX-offset.left; y1=e.clientY-offset.top; dragImage.mousemove(function(e){ img.css("left",(e.clientX-x1)+"px"); img.css("top",(e.clientY-y1)+"px"); e.preventDefault(); }) e.preventDefault(); }); dragImage.mouseup(function(e){ dragImage.unbind("mousemove"); }); dragImage.mouseleave(function(e){ dragImage.unbind("mousemove"); }); }); |
其实,我是想做一个插件,包括拖曳、放大、缩小、原图大小、适合图片大小、全屏显示等功能的图片插件,不过,已经有类似这种插件(iviewer)。
无所不有无所不能的jQuery。