Показать сообщение отдельно
  #1 (permalink)  
Старый 15.08.2010, 18:03
Интересующийся
Отправить личное сообщение для _Dimarik__ Посмотреть профиль Найти все сообщения от _Dimarik__
 
Регистрация: 15.08.2010
Сообщений: 12

событие элемента img
Надо увеличить фотографию при наведении на неё мышью.
для одной фотографии я сделал:
Код:
<?php
	$imageSize = getimagesize('3.jpg');
	if($imageSize[0] > 50)//если ширина > 50
		$newWidth = $imageSize[0] - 40;
	echo "<img name=photo src=3.jpg width=$newWidth onmouseover=\"PhotoEnlarge()\" onmouseout=\"PhotoReduce()\">";
?>
<script>
	function PhotoEnlarge()
	{
		document.photo.width+=40;
	}
	function PhotoReduce()
	{
		if(document.photo.width > 90)
			document.photo.width-=40;		
	}
</script>
но во-первых надо сделать это для массива фотографий, который заполняется циклом:
while($i <= $allPhotos)
		{	
			$iMinusOne = $i - 1;
			//url на маленькие и большие фотки
			$imageSmallPhotoArray[$iMinusOne] = 'http://localhost/'.$imageSmallPhotoArray[$iMinusOne];
			$imageBigPhotoArray[$iMinusOne] = 'http://localhost/'.$imageBigPhotoArray[$iMinusOne];
			
			//получаем размер small фотографии
			$imageSize = getimagesize($imageSmallPhotoArray[$iMinusOne]);
			if($imageSize[0] > 100)//если ширина > 100
			$newWidth = $imageSize[0] - 20;
			if (($i % 3) == 1)//когда начало новой строки
				echo "<tr>";
			echo "<td><img src=\"$imageSmallPhotoArray[$iMinusOne]\" width=\"$newWidth\" ></td>";
			if (($i % 3) == 0)//когда конец строки
				echo "</tr>";
			$i++;	
		}

а во-вторых если увеличивать фотографию как это я сделал, то при увеличении остальные фотографии будут сдвигаться. а мне надо чтобы при наведении эта фотография как бы приподнималась над всеми, и увеличивалась. причём так как первоначальная версия фотографии находится в ячейке, то при увеличении фотографии, она должна будет выходить за границы ячейки и иметь центр симметрии в центре ячейки.
Ответить с цитированием