X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/849f15aeed7a5e39314057bdc0064d8edd60dd7d..b22765f41bf0b2021b9beb9120ee0ac91fa89292:/wp-includes/js/thickbox/thickbox.js
diff --git a/wp-includes/js/thickbox/thickbox.js b/wp-includes/js/thickbox/thickbox.js
index 09c8a993..391fd418 100644
--- a/wp-includes/js/thickbox/thickbox.js
+++ b/wp-includes/js/thickbox/thickbox.js
@@ -18,9 +18,16 @@ jQuery(document).ready(function(){
imgLoader.src = tb_pathToImage;
});
-//add thickbox to href & area elements that have a class of .thickbox
+/*
+ * Add thickbox to href & area elements that have a class of .thickbox.
+ * Remove the loading indicator when content in an iframe has loaded.
+ */
function tb_init(domChunk){
- jQuery('body').on('click', domChunk, tb_click);
+ jQuery( 'body' )
+ .on( 'click', domChunk, tb_click )
+ .on( 'thickbox:iframe:loaded', function() {
+ jQuery( '#TB_window' ).removeClass( 'thickbox-loading' );
+ });
}
function tb_click(){
@@ -34,17 +41,19 @@ function tb_click(){
function tb_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link
+ var $closeBtn;
+
try {
if (typeof document.body.style.maxHeight === "undefined") {//if IE 6
jQuery("body","html").css({height: "100%", width: "100%"});
jQuery("html").css("overflow","hidden");
if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6
- jQuery("body").append("
");
+ jQuery("body").append("");
jQuery("#TB_overlay").click(tb_remove);
}
}else{//all others
if(document.getElementById("TB_overlay") === null){
- jQuery("body").append("");
+ jQuery("body").append("");
jQuery("#TB_overlay").click(tb_remove);
jQuery( 'body' ).addClass( 'modal-open' );
}
@@ -130,7 +139,7 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
TB_WIDTH = imageWidth + 30;
TB_HEIGHT = imageHeight + 60;
- jQuery("#TB_window").append(""+thickboxL10n.close+"" + "
");
jQuery("#TB_closeWindowButton").click(tb_remove);
@@ -195,15 +204,15 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
urlNoQuery = url.split('TB_');
jQuery("#TB_iframeContent").remove();
if(params['modal'] != "true"){//iframe no modal
- jQuery("#TB_window").append("
");
}else{//iframe modal
jQuery("#TB_overlay").unbind();
- jQuery("#TB_window").append("");
+ jQuery("#TB_window").append("");
}
}else{// not an iframe, ajax
if(jQuery("#TB_window").css("visibility") != "visible"){
if(params['modal'] != "true"){//ajax no modal
- jQuery("#TB_window").append("
"+caption+"
");
+ jQuery("#TB_window").append("
"+caption+"
");
}else{//ajax modal
jQuery("#TB_overlay").unbind();
jQuery("#TB_window").append("");
@@ -231,7 +240,9 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
jQuery("#TB_load").remove();
jQuery("#TB_window").css({'visibility':'visible'});
}else{
- jQuery("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
+ var load_url = url;
+ load_url += -1 === url.indexOf('?') ? '?' : '&';
+ jQuery("#TB_ajaxContent").load(load_url += "random=" + (new Date().getTime()),function(){//to do a post change this load method
tb_position();
jQuery("#TB_load").remove();
tb_init("#TB_ajaxContent a.thickbox");
@@ -250,6 +261,16 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
});
}
+ $closeBtn = jQuery( '#TB_closeWindowButton' );
+ /*
+ * If the native Close button icon is visible, move focus on the button
+ * (e.g. in the Network Admin Themes screen).
+ * In other admin screens is hidden and replaced by a different icon.
+ */
+ if ( $closeBtn.find( '.tb-close-icon' ).is( ':visible' ) ) {
+ $closeBtn.focus();
+ }
+
} catch(e) {
//nothing here
}
@@ -258,13 +279,16 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
//helper functions below
function tb_showIframe(){
jQuery("#TB_load").remove();
- jQuery("#TB_window").css({'visibility':'visible'});
+ jQuery("#TB_window").css({'visibility':'visible'}).trigger( 'thickbox:iframe:loaded' );
}
function tb_remove() {
jQuery("#TB_imageOff").unbind("click");
jQuery("#TB_closeWindowButton").unbind("click");
- jQuery("#TB_window").fadeOut("fast",function(){jQuery('#TB_window,#TB_overlay,#TB_HideSelect').trigger("tb_unload").unbind().remove();});
+ jQuery( '#TB_window' ).fadeOut( 'fast', function() {
+ jQuery( '#TB_window, #TB_overlay, #TB_HideSelect' ).trigger( 'tb_unload' ).unbind().remove();
+ jQuery( 'body' ).trigger( 'thickbox:removed' );
+ });
jQuery( 'body' ).removeClass( 'modal-open' );
jQuery("#TB_load").remove();
if (typeof document.body.style.maxHeight == "undefined") {//if IE 6