Вход Регистрация
Файл: Twitter.Clone/TWITTER.CLONE/UPLOAD/js/thickbox.js
Строк: 331
<?php
/*
 * Thickbox 3 - One Box To Rule Them All.
 * By Cody Lindley (http://www.codylindley.com)
 * Copyright (c) 2007 cody lindley
 * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
*/

var tb_pathToImage "gfx/loadingAnimation.gif";

/*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/

//on page load call tb_init
$(document).ready(function(){
    
tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
    
imgLoader = new Image();// preload image
    
imgLoader.src tb_pathToImage;
});

//add thickbox to href & area elements that have a class of .thickbox
function tb_init(domChunk){
    $(
domChunk).click(function(){
    var 
this.title || this.name || null;
    var 
this.href || this.alt;
    var 
this.rel || false;
    
tb_show(t,a,g);
    
this.blur();
    return 
false;
    });
}

function 
tb_show(captionurlimageGroup) {//function called when the user clicks on a thickbox link

    
try {
        if(
document.getElementById("TB_overlay") === null){
            $(
"body").append("<div id='TB_overlay'></div><div id='TB_window'>");
            $(
"#TB_overlay").click(tb_remove);
        }

        if(
caption===null){caption="";}
        $(
"body").append("<div id='TB_load'><img src='"+imgLoader.src+"' /></div>");//add loader to the page
        
$('#TB_load').show();//show loader

        
var baseURL;
       if(
url.indexOf("?")!==-1){ //ff there is a query string involved
            
baseURL url.substr(0url.indexOf("?"));
       }else{
               
baseURL url;
       }

       var 
urlString = /.jpg|.jpeg|.png|.gif|.bmp/g;
       var 
urlType baseURL.toLowerCase().match(urlString);

        if(
urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images

            
TB_PrevCaption "";
            
TB_PrevURL "";
            
TB_PrevHTML "";
            
TB_NextCaption "";
            
TB_NextURL "";
            
TB_NextHTML "";
            
TB_imageCount "";
            
TB_FoundURL false;
            if(
imageGroup){
                
TB_TempArray = $("a[@rel="+imageGroup+"]").get();
                for (
TB_Counter 0; ((TB_Counter TB_TempArray.length) && (TB_NextHTML === "")); TB_Counter++) {
                    var 
urlTypeTemp TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);
                        if (!(
TB_TempArray[TB_Counter].href == url)) {
                            if (
TB_FoundURL) {
                                
TB_NextCaption TB_TempArray[TB_Counter].title;
                                
TB_NextURL TB_TempArray[TB_Counter].href;
                                
TB_NextHTML "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Dalej <img src='../grafika/green_arrow.gif' alt='Dalej &gt;' class='thickbox_arrow' /></a></span>";
                            } else {
                                
TB_PrevCaption TB_TempArray[TB_Counter].title;
                                
TB_PrevURL TB_TempArray[TB_Counter].href;
                                
TB_PrevHTML "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'><img src='grafika/green_arrow_left.gif' alt='&lt; Wstecz' class='thickbox_arrow' /> Wstecz</a></span>";
                            }
                        } else {
                            
TB_FoundURL true;
                            
TB_imageCount "ZdjÄ�cie " + (TB_Counter 1) +" z "+ (TB_TempArray.length);
                        }
                }
            }

            
imgPreloader = new Image();
            
imgPreloader.onload = function(){
            
imgPreloader.onload null;

            
// Resizing large images - orginal by Christian Montoya edited by me.
            
var pagesize tb_getPageSize();
            var 
pagesize[0] - 150;
            var 
pagesize[1] - 150;
            var 
imageWidth imgPreloader.width;
            var 
imageHeight imgPreloader.height;
            if (
imageWidth x) {
                
imageHeight imageHeight * (imageWidth);
                
imageWidth x;
                if (
imageHeight y) {
                    
imageWidth imageWidth * (imageHeight);
                    
imageHeight y;
                }
            } else if (
imageHeight y) {
                
imageWidth imageWidth * (imageHeight);
                
imageHeight y;
                if (
imageWidth x) {
                    
imageHeight imageHeight * (imageWidth);
                    
imageWidth x;
                }
            }
            
// End Resizing

            
TB_WIDTH imageWidth 30;
            
TB_HEIGHT imageHeight 60;
            $(
"#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" TB_imageCount TB_PrevHTML TB_NextHTML "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close (Esc)'>Close</a></div>");

            $(
"#TB_closeWindowButton").click(tb_remove);

            if (!(
TB_PrevHTML === "")) {
                function 
goPrev(){
                    if($(
document).unbind("click",goPrev)){$(document).unbind("click",goPrev);}
                    $(
"#TB_window").remove();
                    $(
"body").append("<div id='TB_window'></div>");
                    
tb_show(TB_PrevCaptionTB_PrevURLimageGroup);
                    return 
false;
                }
                $(
"#TB_prev").click(goPrev);
            }

            if (!(
TB_NextHTML === "")) {
                function 
goNext(){
                    $(
"#TB_window").remove();
                    $(
"body").append("<div id='TB_window'></div>");
                    
tb_show(TB_NextCaptionTB_NextURLimageGroup);
                    return 
false;
                }
                $(
"#TB_next").click(goNext);

            }

            
document.onkeydown = function(e){
                if (
== null) { // ie
                    
keycode event.keyCode;
                } else { 
// mozilla
                    
keycode e.which;
                }
                if(
keycode == 27){ // close
                    
tb_remove();
                } else if(
keycode == 190){ // display previous image
                    
if(!(TB_NextHTML == "")){
                        
document.onkeydown "";
                        
goNext();
                    }
                } else if(
keycode == 188){ // display next image
                    
if(!(TB_PrevHTML == "")){
                        
document.onkeydown "";
                        
goPrev();
                    }
                }
            };

            
tb_position();
            $(
"#TB_load").remove();
            $(
"#TB_ImageOff").click(tb_remove);
            $(
"#TB_window").css({display:"block"}); //for safari using css instead of show
            
};

            
imgPreloader.src url;
        }else{
//code to show html pages

            
var queryString url.replace(/^[^?]+??/,'');
            var 
params tb_parseQueryqueryString );

            
TB_WIDTH = (params['width']*1) + 30 || 630//defaults to 630 if no paramaters were added to URL
            
TB_HEIGHT = (params['height']*1) + 40 || 440//defaults to 440 if no paramaters were added to URL
            
ajaxContentW TB_WIDTH 30;
            
ajaxContentH TB_HEIGHT 45;

            if(
url.indexOf('TB_iframe') != -1){
                    
urlNoQuery url.split('TB_');
                    $(
"#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW 29)+"px;height:"+(ajaxContentH 17)+"px;' onload='tb_showIframe()'> </iframe>");
                }else{
                    if($(
"#TB_window").css("display") != "block"){
                        if(
params['modal'] != "true"){
                        $(
"#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a> or Esc Key</div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>");
                        }else{
                        $(
"#TB_overlay").unbind();
                        $(
"#TB_window").append("<div id='TB_ajaxContent' class='TB_modal' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");
                        }
                    }else{
                        $(
"#TB_ajaxContent")[0].style.width ajaxContentW +"px";
                        $(
"#TB_ajaxContent")[0].style.height ajaxContentH +"px";
                        $(
"#TB_ajaxContent")[0].scrollTop 0;
                        $(
"#TB_ajaxWindowTitle").html(caption);
                    }
            }

            $(
"#TB_closeWindowButton").click(tb_remove);

                if(
url.indexOf('TB_inline') != -1){
                    $(
"#TB_ajaxContent").html($('#' params['inlineId']).html());
                    
tb_position();
                    $(
"#TB_load").remove();
                    $(
"#TB_window").css({display:"block"});
                }else if(
url.indexOf('TB_iframe') != -1){
                    
tb_position();
                    if(
frames['TB_iframeContent'] === undefined){//be nice to safari
                        
$("#TB_load").remove();
                        $(
"#TB_window").css({display:"block"});
                        $(
document).keyup( function(e){ var key e.keyCode; if(key == 27){tb_remove();}});
                    }
                }else{
                    $(
"#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
                        
tb_position();
                        $(
"#TB_load").remove();
                        
tb_init("#TB_ajaxContent a.thickbox");
                        $(
"#TB_window").css({display:"block"});
                    });
                }

        }

        if(!
params['modal']){
            
document.onkeyup = function(e){
                if (
== null) { // ie
                    
keycode event.keyCode;
                } else { 
// mozilla
                    
keycode e.which;
                }
                if(
keycode == 27){ // close
                    
tb_remove();
                }
            };
        }

    } catch(
e) {
        
//nothing here
    
}
}

//helper functions below
function tb_showIframe(){
    $(
"#TB_load").remove();
    $(
"#TB_window").css({display:"block"});
}

function 
tb_remove() {
     $(
"#TB_imageOff").unbind("click");
    $(
"#TB_overlay").unbind("click");
    $(
"#TB_closeWindowButton").unbind("click");
    $(
"#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();});
    $(
"#TB_load").remove();
    if (
typeof document.body.style.maxHeight == "undefined") {//if IE 6
        
$("body","html").css({height"auto"width"auto"});
        $(
"html").css("overflow","");
    }
    
document.onkeydown "";
    return 
false;
}

function 
tb_position() {
$(
"#TB_window").css({marginLeft'-' parseInt((TB_WIDTH 2),10) + 'px'widthTB_WIDTH 'px'});
    if ( !(
jQuery.browser.msie && typeof XMLHttpRequest == 'function')) { // take away IE6
        
$("#TB_window").css({marginTop'-' parseInt((TB_HEIGHT 2),10) + 'px'});
    }
}

function 
tb_parseQuery query ) {
   var 
Params = {};
   if ( ! 
query ) {return Params;}// return empty object
   
var Pairs query.split(/[;&]/);
   for ( var 
0Pairs.lengthi++ ) {
      var 
KeyVal Pairs[i].split('=');
      if ( ! 
KeyVal || KeyVal.length != ) {continue;}
      var 
key unescapeKeyVal[0] );
      var 
val unescapeKeyVal[1] );
      
val val.replace(/+/g' ');
      
Params[key] = val;
   }
   return 
Params;
}

function 
tb_getPageSize(){
    var 
de document.documentElement;
    var 
window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
    var 
window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight;
    
arrayPageSize = [w,h];
    return 
arrayPageSize;
}
?>
Онлайн: 2
Реклама