Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   изменение src картинки в IE6 - не отображает (https://javascript.ru/forum/css-html-internet-explorer/6684-izmenenie-src-kartinki-v-ie6-ne-otobrazhaet.html)

pve 15.12.2009 10:47

изменение src картинки в IE6 - не отображает
 
такая заморочка - немогу победить:
простая функция, в опере без проблем, но в IE картинка не отображается:

function showImageDiv(image_href) {

gi_obj = document.getElementById('gi_image');
gi_obj.src = image_href;

obj = document.getElementById('gi_div');
obj.style.visibility = 'visible';

return true;
}

<!-- стиль для Div с позицией absolute и изначальноневидимостью //-->
  <style>
  .gi {
  position: absolute;
  border: 0px;
  padding: 0px;
  top: 0px;
  left: 0px;
  width: 200px;
  height: 200px;
  visibility: hidden;
  background-color: #FFFFFF }
  </style>

<!-- сам div //-->
<div id='gi_div' class='gi'>\

   <!-- "проблемный" image //-->
   <img id="gi_image" src="" width=200>

</div>

<!-- далее на странице вызов //-->
<a href="javascript:void()" onclick = "showImageDiv('http://domen/image.jpg')">показать</a>


щедкаем по ссылке - показывает div, размером с картинку, но только фон
картинку показывает, если добавить в функцию showImageDiv() вызов любого окна (например alert()), в любом месте.
Как это лечится?

ZeDeX 15.12.2009 11:13

<html>
	<head>
		<script type="text/javascript">
		function showImageDiv(image_href) {
    	my_div = document.getElementById('gi_div');
    	my_div.innerHTML = '<img id="gi_image" src='+image_href+' width=200>';
		my_div.style.visibility = 'visible';
		return true;
		}
		</script>
		<style type="text/css">
		.gi {
		  position: absolute;
		  border: 0px;
		  padding: 0px;
		  top: 0px;
		  left: 0px;
		  width: 200px;
		  height: 200px;
		  visibility: hidden;
		  background-color: #FFFFFF }
		</style>
	</head>
	<body>
	<div id='gi_div' class='gi'></div>
	<a href="#" onclick = "showImageDiv('http://domen/img/ajax.gif')">показать</a>
	</body>
</html>


так работает :)

pve 15.12.2009 11:31

оказывается не там искал :)
да, проблема оказалась вовсе не в функции
заменил пустую ссылку с "javascript:void()" на "#" и все заработало:
<a href="#" onclick = "showImageDiv('http://domen/img/ajax.gif')">показать</a>


спасибо за наводку :victory:

ЗЫ теперь только "кидает" в начало страницы :-?

ЗЗЫ меняем линк на span с тем же onclick - все работает, никуда не подкидывает :) только в css добавляем cursor:pointer


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