Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Смена изображения (https://javascript.ru/forum/events/7585-smena-izobrazheniya.html)

MaxB 09.02.2010 03:17

Смена изображения
 
Суть в следующем:
есть div у которого бэкграундом картинка - Footer.png
текстовый инпут и кнопка

<div id="Footer">
&copy; CopyLeft
</div>
<div>
<input id="radius" name="radius" />
<input type="button" value="Ok" id="go" />
</div>


в текстовом поле указывается радиус скругления углов у изображения

при нажатии на кнопку отправляется ajax запрос к convert.php, который изменяет углы у картинки

$('#go').click(function(){
		value=$('#radius').val();
		jQuery.get(
			'convert.php',
			{radius:value},
			function(resp){
				CHANGE_IMAGE();
				}
			}
		)
	})

function CHANGE_IMAGE(){
image=new Image();
image.src='Footer.png';
image.onload=function(){
$('#Footer').css('background-image','url("Footer.png")');
}
}


Проблема в том что код который в функции CHANGE_IMAGE() бэкграунд не меняет. Если поменять имя файла (например на Footer2.png) тогда все работает. Но проблема в том что имя файла не должно меняться.

Если у кого какие идеи поделитесь пожалуйста.

Kolyaj 09.02.2010 09:28

image.src устанавливайте после image.onload.

MaxB 09.02.2010 13:28

да уже пробовал. не работает

Kolyaj 09.02.2010 13:33

А имя файла-то тем же остаётся? Добавляйте тогда случайный параметр к урлу Footer.png?rnd=32423423

MaxB 09.02.2010 13:48

image=new Image();
image.onload=function(){
  $('#Footer').css('background-image','Footer.png');
}
image.src='Footer.png?rnd=32423423';


следующий код тоже не работает

Kolyaj 09.02.2010 13:57

Так везде адрес картинки-то поменяйте.

MaxB 09.02.2010 14:01

пробовал. не помогает

B~Vladi 10.02.2010 22:01

Адрес правильный?


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