// Piotr Falba, 2012, http://falba.pro // Plugin inspired by: http://tympanus.net/Tutorials/3DHoverEffects (function($) { var css3d = false; if(!styleSupport) { var styleSupport = function(prop) { var vendorProp, supportedProp, capProp = prop.charAt(0).toUpperCase() + prop.slice(1), prefixes = ["Moz", "Webkit", "O", "ms"], div = document.createElement( "div" ); if(prop in div.style) { supportedProp = prop; } else { for(var i = 0; i < prefixes.length; i++) { vendorProp = prefixes[i] + capProp; if(vendorProp in div.style) { supportedProp = vendorProp; break; } } } div = null; $.support[prop] = supportedProp return supportedProp; } } // ---- CSS dynamic hook generator ---- if(!dynamicHook) { var dynamicHook = function(name) { eval("var "+ name +"=styleSupport('"+ name +"');if("+ name +" && "+ name +"!=='"+ name +"'){$.cssHooks."+ name +"={get:function(elem,computed,extra){return $.css(elem,"+ name +");},set:function(elem,value){elem.style["+ name +"]=value;}}}"); } } // ---- Dynamic hook generate ---- var hook = [ 'perspective', 'transform', 'transformStyle', 'transformOrigin', 'transition' ] for(var i = 0; i < hook.length; i++) dynamicHook(hook[i]); $.fn.shutterHover = function(config) { var Config = $.extend( { deg : 40, folds : 5, start : 1 }, config); // ---- 3D support test ---- (function(){ var $d = $('