JQuery - IE 6,7 Непрозрачность не работает - PullRequest
0 голосов
/ 15 декабря 2010

Да, у некоторых людей в сети такая же проблема ... но реального ответа на этот вопрос не было.Разработчики JQuery говорят, что IE 6,7,8 - поддержка, но мне действительно нужна анимация непрозрачности, чтобы получить работу.

Но это не работает .. Мне нужно решение для IE 6,7.Я слышал, что альфа-фильтр ie - хорошая вещь ... но, пожалуйста, дайте мне несколько советов, друзья мои.

nya - вот несколько кодов для немета-обсуждения:

$('#video').click(function() {
    $button = $(this);
    if ( clickedv === 0){
    if( !$button.hasClass( 'disabled' ) ) {
        $button.addClass( 'disabled' );
    clickedv = 1;
    $('#video').animate({width: 0, height: 0, top: 52, left: 311},0);
       $('.flv').animate({left: 19, opacity: '1'},0).css('display', 'inline');
       $('galleria-thumbnails').animate({opacity: '0.3!important'},0);
        $('.close').animate({opacity: '1'},0,

        function() { $button.removeClass('disabled') });

    } 
    }

});

$('.close').click(function() {
    $button = $(this);

    if ( clickedv == 1){
    if( !$button.hasClass( 'disabled' ) ) {
        $button.addClass( 'disabled' );
    clickedv = 0;
    $('#video').animate({width: 164, height: 29, top: 498, marginLeft: 262},0);
       $('.flv').animate({left: 2222, opacity: '0'},0).css('display', 'none');
        $('.close').animate({opacity: '0'},0,
        function() { $button.removeClass('disabled') });

    } 
    }

});

Ответы [ 3 ]

1 голос
/ 15 декабря 2010

IE не поддерживает opacity как стиль CSS.

У него есть альтернативные методы для создания прозрачности с помощью таблиц стилей с использованием специфичного для IE стиля filter, но это не ответЯ бы порекомендовал в вашем случае - CSS может стать очень уродливым, когда вам нужно поддерживать несколько различных вариантов синтаксиса, и еще хуже, если вы меняете его динамически в javascript.

Что вам нужно сделать, этовместо этого используйте методы jQuery fade.Это даст вам хороший кросс-браузерный совместимый анимированный эффект прозрачности.Для получения дополнительной информации см. Справочные страницы jQuery .

1 голос
/ 15 декабря 2010

Из моего теста ie8 не нравится иметь тег! Важный в выражении jquery animate, в то время как chrome кажется счастливым. Это работает, если вы удалите это?

0 голосов
/ 15 декабря 2010

IE использует альфа-фильтр, поэтому вам нужно сделать два стиля для непрозрачности.

opacity:0.3; filter:alpha(opacity=30);

для некоторых старых версий Mozilla требуется

-moz-opacity:0.3;

, вы также можете попробовать

progid:DXImageTransform.Microsoft.Alpha(opacity=30)
...