Добро пожаловать на Lesta Games Wiki!

Участник:Degit22:ru/common.js — различия между версиями

Перейти к: навигация, поиск
Версия 09:50, 24 июня 2015Версия 09:55, 24 июня 2015
Строка 82:Строка 82:
  });  });
  });  });
?  
  
? // Для эскизров в правом столбце ТТХ 
? /*$.each($('div.b-performance a.image'), function(index, value) { 
? var indexGallery = gallersArray.length; 
? gallersArray[indexGallery] = []; 
? var Image = new Object(); 
? var srcStr = $(value).find('img').attr('src'); 
? if (typeof srcStr !== 'undefined') { 
? if (srcStr.indexOf('thumb/')+1 > 0) { 
? srcStr = srcStr.replace(/thumb\//gi, ''); 
? srcStr = srcStr.substring(0, srcStr.lastIndexOf("/")); 
? } 
? } 
? Image.src = srcStr; 
? Image.text = ''; 
? Image.href = $(value).attr('href'); 
? if (typeof Image.src !== 'undefined') { 
? gallersArray[indexGallery][0] = Image; 
? $(value).click(function(index) { 
? setImage(indexGallery, 0); 
? return false; 
? }); 
? } 
?  
?  
?  
?  
? var indexGallery = gallersArray.length; 
? gallersArray[indexGallery] = []; 
? var Image = new Object(); 
? var srcStr = $(value).find('a.image img.thumbimage').attr('src'); 
? if (typeof srcStr !== 'undefined') { 
? if (srcStr.indexOf('thumb/')+1 > 0) { 
? srcStr = srcStr.replace(/thumb\//gi, ''); 
? srcStr = srcStr.substring(0, srcStr.lastIndexOf("/")); 
? } 
? } 
? Image.src = srcStr; 
? Image.text = $(value).find('div.thumbcaption').text().trim(); 
? Image.href = $(value).find('a.image').attr('href'); 
? if (typeof Image.src !== 'undefined') { 
? gallersArray[indexGallery][0] = Image; 
? $(value).find('a.image').click(function(index) { 
? setImage(indexGallery, 0); 
? return false; 
? }); 
? } 
? });*/ 
  // Для одиночных эскизров  // Для одиночных эскизров
  $.each($('a.image').not($('.js-vehicles_by_types a.image')).not($('ul.gallery a.image')), function(index, value) {  $.each($('a.image').not($('.js-vehicles_by_types a.image')).not($('ul.gallery a.image')), function(index, value) {

Версия 09:55, 24 июня 2015

/* добавляет структуру для просмотра увеличенных изображений без перехода на другую страницу */
function addImagePopupWindow2() {
	$('body').append(
		'<div id="popupImageWindow2">'+
			'<table>'+
				'<tr>'+
					'<td style="vertical-align: middle;">'+
						'<div id="popupImage-overlay"></div>'+
						'<div id="popupImageWrapper2">'+
							'<img id="popupImage2" src="" />'+
							'<img src="//wikicdn.wargaming.net/images/b/bd/Close.png" class="closeBtn">'+
							'<a id="popupImage-left" href="javascript:;">'+
								'<span id="popupImage-ico-left" class="popupImage-ico"></span>'+
							'</a>'+
							'<a id="popupImage-right" href="javascript:;">'+
								'<span id="popupImage-ico-right" class="popupImage-ico"></span>'+
							'</a>'+
							'<div id="popupImageInfo2"></div>'+
						'</div>'+
					'</td>'+
				'</tr>'+
			'</table>'+
		'</div>'+
		'<div id="popupImageButtons2"><a id="openImageFile2" href="javascript:;">Файл</a></div>'
	);
}

var gallersArray = [], currentGalleryIndex = 0, currentImageIndex = 0;

/* Открывает картинку */
function setImage(indexGallery, indexImage) {
	currentGalleryIndex = indexGallery;
	currentImageIndex = indexImage;
	$('#popupImage2').width('1px');
	$('#popupImage2').height('1px');
	$('#popupImage-overlay').css('background-image', 'url('+imageLoaderUrl+')');
	$('#popupImage2').attr('src', gallersArray[indexGallery][indexImage].src);
	$('#popupImageButtons2 a#openImageFile2').attr('href', gallersArray[indexGallery][indexImage].href);
	$('#popupImageInfo2').html(gallersArray[indexGallery][indexImage].text);
	if (gallersArray[indexGallery].length < indexImage + 2) { // Если нет следующей картинки убираем кнопку
		$('#popupImage-right').hide();
	} else {
		$('#popupImage-right').show();
	}
	if (indexImage - 1 < 0) { // Если нет предыдущей картинки убираем кнопку
		$('#popupImage-left').hide();
	} else {
		$('#popupImage-left').show();
	}
	$('#popupImageWrapper2').hide();
	$('#popupImageWindow2').show();
	$('#popupImageButtons2').show();
}

/* добавляет функционал просмотра увеличенных изображений без перехода на другую страницу */
function addImagePopups2() {
	addImagePopupWindow2();
	$('a.image').unbind('click'); ////////////Временное решение. Отключаем старый код

	// Для галерей
	$.each($('ul.gallery'), function(indexGallery, valueGallery) {
		gallersArray[indexGallery] = [];
		$.each($(valueGallery).find('li.gallerybox'), function(indexImage, valueImage) {
			var Image = new Object();
			var srcStr = $(valueImage).find('a.image img').attr('src');
			if (typeof srcStr !== 'undefined') {
				if (srcStr.indexOf('thumb/')+1 > 0) {
					srcStr = srcStr.replace(/thumb\//gi, '');
					srcStr = srcStr.substring(0, srcStr.lastIndexOf("/"));
				}
			}
			Image.src = srcStr;
			Image.text = $(valueImage).find('div.gallerytext').text().trim();
			Image.href = $(valueImage).find('a.image').attr('href');
			if (typeof Image.src !== 'undefined') {
				gallersArray[indexGallery][indexImage] = Image;
				$(valueImage).find('a.image').click(function(index) {
					setImage(indexGallery, indexImage);
					return false;
				});
			}
		});
	});

	// Для одиночных эскизров
	$.each($('a.image').not($('.js-vehicles_by_types a.image')).not($('ul.gallery a.image')), function(index, value) {
		var indexGallery = gallersArray.length;
		gallersArray[indexGallery] = [];
		var Image = new Object();
		var srcStr = $(value).find('img').attr('src');
		if (typeof srcStr !== 'undefined') {
			if (srcStr.indexOf('thumb/')+1 > 0) {
				srcStr = srcStr.replace(/thumb\//gi, '');
				srcStr = srcStr.substring(0, srcStr.lastIndexOf("/"));
			}
		}
		Image.src = srcStr;
		var titleStr = ''; //Подпись
		if ($(this).next('div.thumbcaption').length > 0) {
			titleStr = $(this).next('div.thumbcaption').text().trim();
		} else if($(this).parent().parent().parent().children('div.gallerytext').length > 0) {
			titleStr = $(this).parent().parent().parent().children('div.gallerytext').text().trim();
		}
		Image.text = titleStr;
		Image.href = $(value).attr('href');
		if (typeof Image.src !== 'undefined') {
			gallersArray[indexGallery][0] = Image;
			$(value).click(function(index) {
				setImage(indexGallery, 0);
				return false;
			});
		}
	});

	// После загрузки картинки показываем её
	$('#popupImage2').load(function() {
		$('#popupImage2').width('');
		$('#popupImage2').height('');
		$(this).css('max-width', (self.innerWidth-100)+'px');
		$(this).css('max-height',(self.innerHeight-100)+'px');
		$('#popupImage-overlay').css('background-image', '');
		$('#popupImageWrapper2').show();
	});

	//Закрыть попап кнопкой
	$('.closeBtn').click(function(index) {
		$('#popupImageWindow2').hide();
		$('#popupImageButtons2').hide();
		$('#popupImageButtons2 a').attr('href', '#');
		$('#popupImageInfo2').text('');
		$('#popupImage2').attr('src', '');
	});

	//Закрыть попап фоном
	$('#popupImage-overlay').click(function(index) {
		$('#popupImageWindow2').hide();
		$('#popupImageButtons2').hide();
		$('#popupImageButtons2 a').attr('href', '#');
		$('#popupImageInfo2').text('');
		$('#popupImage2').attr('src', '');
	});

	// Предыдущую картинку
	$('a#popupImage-left').click(function(index) {
		setImage(currentGalleryIndex, currentImageIndex - 1);
	});

	// Следующую картинку
	$('a#popupImage-right').click(function(index) {
		setImage(currentGalleryIndex, currentImageIndex + 1);
	});
};

$(document).ready(function(){
	setTimeout(addImagePopups2, 0);
});