Wordpress/wp-includes/js/customize-preview.js
2012-05-25 22:58:24 +00:00

1 line
1.6 KiB
JavaScript

(function(b,d){var c=wp.customize,a;a=function(g,e,f){var h;return function(){var i=arguments;f=f||this;clearTimeout(h);h=setTimeout(function(){h=null;g.apply(f,i)},e)}};c.Preview=c.Messenger.extend({initialize:function(g,f){var e=this;c.Messenger.prototype.initialize.call(this,g,null,f);this.body=d(document.body);this.body.on("click.preview","a",function(h){h.preventDefault();e.send("scroll",0);e.send("url",d(this).prop("href"))});this.body.on("submit.preview","form",function(h){h.preventDefault()});this.window=d(window);this.window.on("scroll.preview",a(function(){e.send("scroll",e.window.scrollTop())},200));this.bind("scroll",function(h){e.window.scrollTop(h)})}});d(function(){c.settings=window._wpCustomizeSettings;if(!c.settings){return}var f,e;f=new c.Preview(window.location.href);d.each(c.settings.values,function(h,g){c.create(h,g)});f.bind("setting",function(g){var h=c(g.shift());if(h){h.set.apply(h,g)}});e=d.map(["color","image","position_x","repeat","attachment"],function(g){return"background_"+g});c.when.apply(c,e).done(function(h,l,i,k,m){var g=d(document.body),j=d("#custom-background-css"),n;if(g.hasClass("custom-background")&&!j.length){return}if(!j.length){j=d('<style type="text/css" id="custom-background-css" />').appendTo("head")}n=function(){var o="";g.toggleClass("custom-background",!!(h()||l()));if(h()){o+="background-color: #"+h()+";"}if(l()){o+='background-image: url("'+l()+'");';o+="background-position: top "+i()+";";o+="background-repeat: "+k()+";";o+="background-position: top "+m()+";"}j.html("body.custom-background { "+o+" }")};d.each(arguments,function(){this.bind(n)})})})})(wp,jQuery);