Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.06.2010, 11:23
Аспирант
Отправить личное сообщение для Юрий Шу Посмотреть профиль Найти все сообщения от Юрий Шу
 
Регистрация: 27.05.2010
Сообщений: 42

show/hide. Проблемы в IE
Здравствуйте. Имею простейший пример:
<div class="auth">
            <ul>
		      <li><a href="#">Зарегистрироваться</a></li>
		      <li><a href="#">Войти</a></li>
		    </ul>  
          </div>
		  <div id="auth-form"><img src="auth.png" alt="" /></div>

$(document).ready(function(){
    $(".auth li").eq(1).click(function(){
        $("#auth-form").show("fast");
        return false;
    })
	$(document).click(function(e){ 
	    if (!$(e.target).closest('#auth-form').length) { 
	        $('#auth-form').fadeOut("fast"); 
	    } 
	});
});

#auth-form { display: none; position: absolute; top: 30px; right: 10px; }

Во всех браузерах работает, кроме IE. Если же у auth-form сделать display: block, то все работает, включая появление блока.

Подскажите, как поправить?
Ответить с цитированием
  #2 (permalink)  
Старый 10.06.2010, 12:56
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

Во-первых, у IE не event.target, а event.srcElement. Во-вторых, IE не передаёт объект event в аргумент ф-ции обработчика события, всё в window.event. Ну в-общем, делать надо так:

e = e || window.event;
x = e.srcElement || e.target;
Ответить с цитированием
  #3 (permalink)  
Старый 10.06.2010, 13:08
Аспирант
Отправить личное сообщение для Юрий Шу Посмотреть профиль Найти все сообщения от Юрий Шу
 
Регистрация: 27.05.2010
Сообщений: 42

exec, этот скрипт рабочий. Мне тут на форуме подсказывали. Наверное и вы тоже, просто потом сократили его немного.

Проблема в ie была из-за:
<!--[if IE]><script type="text/javascript" src="js/unitpngfix.js"></script><![endif]-->

Сделал картинку в блоке не png, а gif и все заработало.

Спасибо за помощь.
Ответить с цитированием
  #4 (permalink)  
Старый 15.06.2010, 20:18
sab sab вне форума
Новичок на форуме
Отправить личное сообщение для sab Посмотреть профиль Найти все сообщения от sab
 
Регистрация: 15.06.2010
Сообщений: 1

Помогите и мне. Есть такой хтмл:
<div id="nautica_flags">
			    <img src="img/nautica/s.jpg" alt="S" width="16" style="display: inline;" />
			    <img src="img/nautica/a.jpg" alt="a" width="16" style="display: inline;" />
			    <img src="img/nautica/i.jpg" alt="i" width="16" style="display: inline;" />
			    <img src="img/nautica/l.jpg" alt="l" width="16" style="display: inline;" />
			    &nbsp;&nbsp;
			    <img src="img/nautica/t.jpg" alt="t" width="16" style="display: inline;" />
			    <img src="img/nautica/o.jpg" alt="o" width="16" style="display: inline;" />
			    <img src="img/nautica/u.jpg" alt="u" width="16" style="display: inline;" />
			    <img src="img/nautica/r.jpg" alt="r" width="16" style="display: inline;" />
			</div>


И есть скрипт:
function HideFlag(flag){
        if(flag.is('img')){
            flag.animate({opacity: "hide"}, 300, "swing", function(){
                $("<span>"+flag.attr('alt')+"</span>").insertBefore(flag);
                HideFlag(flag.next());
            });
        }
    }
    function ShowFlag(flag){
        if(flag.is('img')){
            flag.prev().remove();
            flag.animate({opacity: "show"}, 300, "swing", function(){
                ShowFlag(flag.next('span').next());
            });
        }
    }

    $('.nautica .link a').click(function(){
        if($('#nautica_flags span').length){
            ShowFlag($('#nautica_flags img:first'));
        } else {
            HideFlag($('#nautica_flags img:first'));
        }

        return false;
    });


В ИЕ проблемма - скрывается нормально, а появляется только 3 рисунка

Нашол решение проблеммы, по непонятным причинам не во всех элементах менялся стиль display: inblock, изменение этого стиля перед анимацией исправило проблемму

Последний раз редактировалось sab, 16.06.2010 в 00:26.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с iframe в ie GRean Internet Explorer 0 14.05.2010 12:57
Добрый день возникли проблемы при установке фокуса в Mozilla Даниэль Ноубл Общие вопросы Javascript 7 24.04.2010 00:50
Проблемы кроссбраузерности под 64-разрядной OS Сергеев_ЕВ Javascript под браузер 15 26.01.2010 21:58
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37
Drug&Drop + всплывание события = проблемы =(( _NoName_ Events/DOM/Window 4 05.03.2009 17:47