Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Смена картинок при клике (https://javascript.ru/forum/misc/5434-smena-kartinok-pri-klike.html)

Hazard 14.10.2009 14:48

Смена картинок при клике
 
Здравствуйте.
Есть такой скрипт:

<script language="JavaScript">
var img1="/i/catalog/beds/galary/_203.jpg";//Рисунок номер 1
var img2="/i/catalog/beds/galary/_205.jpg";//Рисунок номер 2
new Image().src=img2;
function zamena(cl){
if(cl){
document.all.img.src=img2;
}else{
document.all.img.src=img1;
}
}
document.write("<img name='img' src='"+img1+"' onClick='zamena(true)' >");
</script>

Он меняет одну картинку на другую при клике, НО(!) только один раз.
Как сделать, чтобы смена картинок шла постоянно, то есть сначала видим картинку 1, кликаем - она заменяется на картинку 2, потом снова кликаем и картинка 2 снова заменяется 1-ой и т.д. 1-2-1-2-1-2-1...
Благодарю..

cuberboy 15.10.2009 23:08

ыыыыыыыыыыыыы
document.all.img.src=(document.all.img.src==img1)? (img2): (img1);

Octane 15.10.2009 23:19

cuberboy, значением свойства src будет абсолютный адрес.

cuberboy 17.10.2009 13:42

это мелочи

JSprog 19.10.2009 15:21

<html>
 <img SRC="Max-it1.png" onclick=imgchange(this,"Max-it1.png","img1.jpg")>
<script>
  var x=false
  function imgchange(obj,imgX,imgY) {
   if  (x){
   obj.src=imgX
   } else {
   obj.src=imgY
   }
  x=!x
 }
 </script>
 </html>

Hazard 19.10.2009 17:43

Спасибо!

JSprog 19.10.2009 18:05

Пожалуйста=)
Главное помните для каждой пары картинок нужна своя глобальная переменная.

JSprog 19.10.2009 18:08

А вообще я вот вам даю коды готовые. По сути я поступаю плохо. Так бы вы разбирались, капались в них. Если вам надо могу объяснить скрипт пишите, попробуйте разобраться. Это касается всех кому я даю скрипты если что-то непонятно я объясню.

рома 23.06.2010 11:01

подскажите как этот код совместить со ссылкой? я сделал на фотошопе картинки нажатой и выпуклой кнопок.. вставил ваш код в ссылку, в результате при нажатии ничего не происходит, кнопка не прогибается
заранее спасибо)

subzey 23.06.2010 20:07

…ну и опять я влезу со своим очередным безяваскриптовым способом, просто для того, чтобы не недооценивали css. :)

<style type="text/css">
	.linktoggler a:target,
	.linktoggler a:last-child {
		display: block;
	}
	.linktoggler a,
	.linktoggler a:target ~ a:last-child {
		display: none
	}
</style>

<div class="linktoggler">
	<a id="i1" href="#i2"><img src="http://t1.gstatic.com/images?q=tbn:e_Btp8weovl5sM:http://kombinator.ru/files/images/%D0%98%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5%2520371_1.jpg" /></a>
	<a id="i2" href="#i3"><img src="http://t0.gstatic.com/images?q=tbn:PAasTfumv6DVTM:http://www.gandex.ru/upl/oboi/u185_7761_morskaya_volna.jpg" /></a>
	<a id="i3" href="#i4"><img src="http://t0.gstatic.com/images?q=tbn:V5QI99DfbCXimM:http://demiart.ru/tutorials/book/5/5.42.jpg" /></a>
	<a id="i4" href="#i1"><img src="http://t3.gstatic.com/images?q=tbn:NnK7XVJb8kEsNM:http://upload.wikimedia.org/wikipedia/commons/1/1b/%D0%98%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5_307.jpg" /></a>
</div>

Должно работать в Сафари, Хроме и Опере. Насчет Файрфокса — не знаю, насколько он умеет элементы HTML5.


Часовой пояс GMT +3, время: 13:51.