Javascript.RU

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

Смена картинки при нажатии на радиокнопку (нужен совет)
Уважаемые знатоки, помогите разрешить одну задачку.

JavaScript отнюдь не является моей специализацией, но нужда заставила.

Требуется, чтобы при нажатии на радиокнопку добавлялась подстрока к адресу главного изображения, тем самым в браузере изменяя эту картинку на другую. Всё это без использования jQuery.

Хочу реализовать задумку примерно таким образом:

<html>
<head>
</head>
<body>
<img src="I:\black.jpg" name="radio" class="radiobutton" />
<div>
	<input type="radio" name='test' OnClick="window.document.images['radio'].src='I:\lime.jpg';" />
	<input type="radio" name='test' OnClick="window.document.images['radio'].src='I:\orange.jpg';" />
	<input type="radio" name='test' OnClick="window.document.images['radio'].src='I:\green.jpg';" />
</div>

</body>
</html>


Но думаю использовать в событии onClick функцию replace(), типа:

replace('.jpg', '-new.jpg')

Таким образом главная картинка должна бы превратиться из black.jpg в black-new.jpg

Но не пойму, как связать функцию с событием onClick; ведь не таким же образом это делать:

<input type="radio" name='test' OnClick="window.document.images['radio'].src.replace('.jpg', '-new.jpg');" />


Помогите самообучающемуся советом, пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 04.04.2013, 18:09
Новичок на форуме
Отправить личное сообщение для Roningrad Посмотреть профиль Найти все сообщения от Roningrad
 
Регистрация: 04.04.2013
Сообщений: 2

Разобрался. В принципе вот так заработало как нужно:

<html>
<head>
</head>
<body>
<img src="I:/image-black.jpg" name="radio" class="radiobutton" />
<div>
	<input type="radio" name='test' OnClick="document.radio.src=document.radio.src.replace(/-.*?\.jpg/i, '-orange.jpg');" />
	<input type="radio" name='test' OnClick="document.radio.src=document.radio.src.replace(/-.*?\.jpg/i, '-lime.jpg');" />
	<input type="radio" name='test' OnClick="document.radio.src=document.radio.src.replace(/-.*?\.jpg/i, '-green.jpg');" />
</div>

</body>
</html>

Последний раз редактировалось Roningrad, 05.04.2013 в 10:23.
Ответить с цитированием
  #3 (permalink)  
Старый 04.04.2013, 21:12
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от Roningrad
при нажатии на радиокнопку добавлялась подстрока к адресу главного изображения
Как вариант...

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function test(Obj) {
	var o=document.getElementById('radio');
	var val=o.src.replace(/\-([A-Za-z0-9])+.jpg$/,Obj.value+'.jpg');
	alert(val);
	o.src=val;
};
</script>
</head>
<body>
<img src="I:\black-my.jpg" id="radio" class="radiobutton" />
<div>
	<input type="radio" name='test' onclick='test(this)' value='-new' />
	<input type="radio" name='test' onclick='test(this)' value='-new2' />
	<input type="radio" name='test' onclick='test(this)' value='-new3' />
</div>
</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
смена картинок при нажатии sdff Общие вопросы Javascript 15 08.02.2014 17:08
Ajax смена картинки при нажатии на неё maxim123 AJAX и COMET 1 23.02.2011 14:57
Рандомная смена картинки при наведений курсора Balbeso Events/DOM/Window 3 05.01.2011 16:08
Смена картинки в шапке при перезагрузки wcb-falcon Элементы интерфейса 12 13.07.2010 23:36
Обновление картинки при нажатии sdff Общие вопросы Javascript 2 07.10.2008 09:05