This repository was archived by the owner on Oct 5, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjQuery.scaleFrame.min.js
More file actions
executable file
·19 lines (19 loc) · 6.89 KB
/
Copy pathjQuery.scaleFrame.min.js
File metadata and controls
executable file
·19 lines (19 loc) · 6.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
* jQuery.scaleFrame.min.js
* https://github.com/BrynM/jQuery.scaleFrame.js
* Copyright (C) 2012, Bryn P. Mosher (GPLv2)
*/
(function(a){a.fn.scaleFrame=function(g,b,h){var d=/\w/,f=null,c=null,b="object"==typeof b?a(b):this,e=a.fn.scaleFrame._ourClass,f=a.fn.scaleFrame._ourClassNav,i=null,k=null,i=[],j=-1,l=null,m=j=null;h&&(b=b.first());if(1==b.length){if(c=a.extend({},a.fn.scaleFrame._defaults),c="object"==typeof g?a.extend(c,g):c,"object"==typeof c&&b.is("iframe")){if("string"!=typeof c.denote||!/^\S$/.test(c.denote))c.denote=a.fn.scaleFrame._defaults.denote;l=a.fn.scaleFrame._readScale(b,!0);if("object"==typeof l&&
"number"==typeof l.length&&2==l.length){if("object"==typeof b.get(0).scaleFrame)if(c.reApply)b.parent().is("."+e)&&(b.parent().find("."+f).remove(),b.parent().replaceWith(b.parent().contents()),b.get(0).scaleFrame=null,b.get(0).scaleFrameOpts=null);else return this;c.zoom=parseFloat(c.zoom);if(!isNaN(c.zoom)&&0<c.zoom){m=a("<ul></ul>");m.addClass(f);if(c.zoomControls&&"object"==typeof c.zoomControls&&"number"==typeof c.zoomControls.length&&0<c.zoomControls.length)for(aZ=0;aZ<c.zoomControls.length;aZ++)if(c.zoomControls[aZ]=
c.zoomControls[aZ].toLowerCase(),g=c.zoomControls[aZ].charAt(0).toUpperCase()+c.zoomControls[aZ].slice(1),"string"==typeof c["zoomStr"+g]&&0<c["zoomStr"+g].length&&!("min"==c.zoomControls[aZ]&&(isNaN(c.zoomMin)||0>parseFloat(c.zoomMin))))"max"==c.zoomControls[aZ]&&(isNaN(c.zoomMax)||0>=parseFloat(c.zoomMax))||(j=i.push(a("<li></li>"))-1,i[j].html(c["zoomStr"+g]),"string"==typeof f&&d.test(f)&&i[j].addClass(f+"-control-"+c.zoomControls[aZ]),"string"==typeof c.zoomClass&&d.test(c.zoomClass)&&(i[j].addClass(c.zoomClass+
"-"+c.zoomControls[aZ]),i[j].addClass(c.zoomClass+"-item")));j=i.push(a('<li style="clear: both; height : 1px;"> </li>'))-1;for(g=0;g<i.length;g++)g<j&&("string"==typeof f&&d.test(f)&&i[g].addClass(f+"-control"),i[g].click(a.fn.scaleFrame._handle_nav),i[g].get(0)._scaleFrameTarget=b),m.append(i[g]);"string"==typeof c.zoomClass&&d.test(c.zoomClass)&&m.addClass(c.zoomClass)}f=b.css("float");i=b.outerWidth();k=b.outerHeight();!isNaN(i)&&0<i&&!isNaN(k)&&0<k&&(j=a("<div></div>"),j.addClass(e),b.attr("id")&&
j.attr("id",b.attr("id")+"_"+c.denote),i=Math.round(i*l[0]),k=Math.round(k*l[1]),j.css({width:i+"px",height:k+"px",overflow:"hidden"}),"string"==typeof c.wrapClass&&d.test(c.wrapClass)&&j.addClass(c.wrapClass),b.wrap(j),j=b.parent().first(),null!=m&&(b.before(m),k=parseInt(k+m.outerHeight()),j.css({height:k+"px"})),f&&"none"!=f&&(j.css("float",f),j.append('<div style="clear: both; height: 1px;"> </div>')),b.get(0)._scaleFrame=j,b.get(0)._scaleFrameTarget=b,b.get(0)._scaleFrameOpts=c,b.get(0)._scaleFrameOriginalScale=
l)}}}else for(d=0;d<b.length;d++)a.fn.scaleFrame(g,b[d],!0);return this};a.fn.scaleFrame._ourClass="scaleFrame-added";a.fn.scaleFrame._ourClassNav=a.fn.scaleFrame._ourClass+"-zoom-nav";a.fn.scaleFrame._bSpef=["-moz-","-webkit-","-o-","-ms-",""];a.fn.scaleFrame._defaults={reApply:!1,wrapClass:"",zoom:0,zoomClass:"",zoomMax:3,zoomMin:0.05,zoomControls:"min,minus,reset,whole,plus,max".split(","),zoomStrMax:"max",zoomStrMin:"min",zoomStrMinus:"-",zoomStrPlus:"+",zoomStrReset:"reset",zoomStrWhole:"100%"};
a.fn.scaleFrame._handle_nav=function(g){var b=null,h=null,d=null,f=null,c=null,e=b=null,i=0,c={},k=null,f=null;if("object"==typeof g&&"object"==typeof g.currentTarget&&("function"==typeof g.preventDefault&&g.preventDefault(),"function"==typeof g.stopPropagation&&g.stopPropagation(),"object"==typeof g.currentTarget._scaleFrameTarget&&"function"==typeof g.currentTarget._scaleFrameTarget.get&&(f=g.currentTarget._scaleFrameTarget.get(0),h=a(f),"object"==typeof f._scaleFrameOpts&&(b=a(g.currentTarget),
d=f._scaleFrameOpts,k=f._scaleFrame,"number"==typeof d.zoom&&0<d.zoom)))){switch(!0){case b.hasClass(a.fn.scaleFrame._ourClassNav+"-control-minus"):e=a.fn.scaleFrame._readScale(f,!0);i=0-parseFloat(d.zoom);break;case b.hasClass(a.fn.scaleFrame._ourClassNav+"-control-min"):if(isNaN(d.zoomMin))break;f=0>=d.zoomMin?0:d.zoomMin;e=[f,f];break;case b.hasClass(a.fn.scaleFrame._ourClassNav+"-control-max"):if(isNaN(d.zoomMax))break;f=0>=d.zoomMax?0:d.zoomMax;e=[f,f];break;case b.hasClass(a.fn.scaleFrame._ourClassNav+
"-control-plus"):e=a.fn.scaleFrame._readScale(f,!0);i=0+parseFloat(d.zoom);break;case b.hasClass(a.fn.scaleFrame._ourClassNav+"-control-reset"):e=a.extend([],f._scaleFrameOriginalScale);break;case b.hasClass(a.fn.scaleFrame._ourClassNav+"-control-whole"):e=[1,1]}if(null!=e&&"object"==typeof e&&"number"==typeof e.length&&2==e.length){e=a.fn.scaleFrame._incAll(e,i,!0,!0);b.hasClass(a.fn.scaleFrame._ourClassNav+"-reset")||(e[0]=e[0]>d.zoomMax?d.zoomMax:e[0],e[0]=e[0]<d.zoomMin?d.zoomMin:e[0],e[1]=e[1]>
d.zoomMax?d.zoomMax:e[1],e[1]=e[1]<d.zoomMin?d.zoomMin:e[1]);e[0]=0>e[0]?0:e[0];e[1]=0>e[1]?0:e[1];for(g=0;g<a.fn.scaleFrame._bSpef.length;g++)c[a.fn.scaleFrame._bSpef[g]+"transform"]="scale("+e[0]+","+e[1]+")";h.css(c);c=Math.round(h.outerWidth()*e[0]);b=Math.round(h.outerHeight()*e[1])+b.parent().outerHeight();k.css({width:c+"px",height:b+"px"})}}return!1};a.fn.scaleFrame._incAll=function(a,b,h,d){var f=!1,c=!1,h="undefined"==typeof h?!0:h,b="undefined"==typeof b?1:parseFloat(b);if("object"==typeof a&&
!isNaN(b)&&0!=b)for(var e in a)f=!1,a.hasOwnProperty(e)&&(c="string"==typeof a[e],c&&!h||isNaN(parseFloat(a[e]))||(/^[0-9]+\.([0-9]+([eE]\+[0-9]+)?)?$/.test(a[e].toString())?(a[e]=parseFloat(a[e])+parseFloat(b),f=!0):/^[0-9]+$/.test(a[e].toString())&&(a[e]=parseInt(a[e])+parseFloat(b),d||(a[e]=Math.round(a[e])),f=!0),f&&(a[e]=c?""+a[e]:a[e])));return a};a.fn.scaleFrame._readMatrix=function(g,b){var h=[];"object"==typeof g?h=a(g):(h=a(this),"boolean"==typeof g&&"undefined"==typeof b&&(b=g));if("number"==
typeof h.length&&0<h.length){if(1<h.length)if(b)h=h.first();else for(var d=0;d<h.length;d++)a.fn.scaleFrame._readMatrix(h[d],!0);if(1==h.length)for(d=0;d<a.fn.scaleFrame._bSpef.length;d++){var f=h.css(a.fn.scaleFrame._bSpef[d]+"transform");if("string"==typeof f&&/^matrix\([^\)]+\)$/.test(f))return f.match(/[0-9\.]+/g)}}};a.fn.scaleFrame._readScale=function(g,b){var h=[],d=null,d=[];"object"==typeof g?h=a(g):"function"==typeof this.css&&(h=a(this));if("number"==typeof h.length&&0<h.length){if(1<h.length)if(b)h=
h.first();else{for(var f=0;f<h.length;f++)d[f]=a.fn.scaleFrame._readScale(h[f],!0);return d}if(1==h.length){d=a.fn.scaleFrame._readMatrix(h,!0);if("number"==typeof d.length&&6==d.length)return[d[0],d[3]];for(d=0;d<a.fn.scaleFrame._bSpef.length;d++)if(f=h.css(a.fn.scaleFrame._bSpef[d]+"transform"),"string"==typeof f&&/^scale\([^\)]+\)$/.test(f))return f.match(/[0-9\.]+/g)}}return[1,1]};return a.fn.scaleFrame})(jQuery)&&function(a){a.fn.readScale=function(){return a.fn.scaleFrame._readScale(this)};
return a.fn.readScale}(jQuery)&&function(a){a.fn.readMatrix=function(){return a.fn.scaleFrame._readMatrix(this)};return a.fn.readMatrix}(jQuery)&&function(a){a.incrementAll=function(g,b,h,d){return a.fn.scaleFrame._incAll(g,b,h,d)};return a.incrementAll}(jQuery);