2009-11-04 2 views
0

У меня возникли проблемы с IE6 изображения обменивать с помощью JQuery (но предположительно любой старый Javascript будет инициировать этот вопрос)IE6 Javascript изображения обменивать

При установке $(). Атр («ЦСИ», «image.png»), где текущее изображение селектора сильно отличается по размеру с изображением image.png, IE6 сжимает новое изображение в рамке старого изображения без изменения размера вообще.

Я пробовал несколько способов обойти это, например, заменить на изображение новым элементом изображения, вызванным событием onload при загрузке нового изображения, но ничто не кажется надежным вообще, различными результатами было изображение забиты в очень маленькую коробку, или новое изображение просто не загружается вообще.

Любая помощь очень ценится.

ответ

0

Возможно, вам нужно вызвать переплавку. Попробуйте добавить и сразу удалить DIV после загрузки нового изображения. Тем не менее, должен быть какой-то лучший способ активировать оплату. Я посмотрю.


Конечно, я предполагаю, что вы не задали размер изображения явно с помощью CSS? Потому что если img имеет style = "width: 200px; height: 200px;" он останется квадратом 200 пикселей, даже если вы загрузите в него полный размер рендеринга Empire State Building.


О других способах запуска reflow, look here. Дайте мне знать, если я правильно догадался.

+1

Лучшим способом запуска reflow является установка атрибута 'className'; вам даже не нужно его изменять. 'element.className = element.className' будет делать это :-) (Обратите внимание, что это может потребоваться для элемента контейнера, а не на изображении.) – NickFitz

+0

+1, потому что ваш ответ на мой ответ более холодный, чем мой ответ к его вопросу: D –

Смежные вопросы