mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-09 04:11:10 +01:00
5181e0abd3
git-svn-id: http://core.svn.wordpress.org/trunk@20803 1a063a9b-81f0-0310-95a4-ce76da25c4cd
1 line
2.3 KiB
JavaScript
1 line
2.3 KiB
JavaScript
if(typeof wp==="undefined"){var wp={}}(function(a,c){var b=wp.customize,d;d=c.extend({},b.Events,{supports:{history:!!(window.history&&history.pushState),hashchange:("onhashchange" in window)&&(document.documentMode===undefined||document.documentMode>7)},initialize:function(){this.body=c(document.body).addClass("customize-support");this.window=c(window);this.element=c('<div id="customize-container" class="wp-full-overlay" />').appendTo(this.body);this.bind("open",this.overlay.show);this.bind("close",this.overlay.hide);c("#wpbody").on("click",".load-customize",function(e){e.preventDefault();d.open(c(this).attr("href"))});if(this.supports.history){this.window.on("popstate",d.popstate)}if(this.supports.hashchange){this.window.on("hashchange",d.hashchange)}},popstate:function(g){var f=g.originalEvent.state;if(f&&f.customize){d.open(f.customize)}else{if(d.active){d.close()}}},hashchange:function(g){var f=window.location.toString().split("#")[1];if(f&&0===f.indexOf("customize=on")){d.open(wpCustomizeLoaderL10n.url+"?"+f)}if(!f&&!d.supports.history){d.close()}},open:function(f){var e;if(this.active){return}this.active=true;this.body.addClass("customize-loading");this.iframe=c("<iframe />",{src:f}).appendTo(this.element);this.iframe.one("load",this.loaded);this.messenger=new b.Messenger(f,this.iframe[0].contentWindow);this.messenger.bind("ready",function(){d.messenger.send("back",wpCustomizeLoaderL10n.back||"")});this.messenger.bind("close",function(){if(d.supports.history){history.back()}else{if(d.supports.hashchange){window.location.hash=""}else{d.close()}}});e=f.split("?")[1];if(d.supports.history&&window.location.href!==f){history.pushState({customize:f},"",f)}else{if(!d.supports.history&&d.supports.hashchange&&e){window.location.hash=e}}this.trigger("open")},opened:function(){d.body.addClass("customize-active full-overlay-active")},close:function(){if(!this.active){return}this.active=false;this.trigger("close")},closed:function(){d.iframe.remove();d.messenger.destroy();d.iframe=null;d.messenger=null;d.body.removeClass("customize-active full-overlay-active").removeClass("customize-loading")},loaded:function(){d.body.removeClass("customize-loading")},overlay:{show:function(){this.element.fadeIn(200,d.opened)},hide:function(){this.element.fadeOut(200,d.closed)}}});c(function(){if(window.postMessage){d.initialize()}});b.Loader=d})(wp,jQuery); |