Можете ли вы изменить z-index с помощью JS в IE8? - PullRequest
1 голос
/ 21 мая 2009

Очень простой пример: http://jsbin.com/ohude

Нажмите button1, текст «hello2» p должен изменить z-index на 89. Нажмите button2, z-index должен снова измениться. Это очевидно в firebug. Но это не работает в IE8.

Может кто-нибудь подтвердить?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 21 мая 2009

У меня нет IE8 и я не знаю код jQuery.

Вы пытались изменить просматриваемый текст или только z-index? Если z-index И просмотренный текст, в Safari это было запрещено.

Для моего теста я изменил ваши оригинальные функции в стиле jQuery на:

  1. оповещение о ваших первоначальных изменениях (обратите внимание, что style.zIndex, а не z-index); и
  2. затем изменил текст nodeValue, чтобы отразить изменение z-индекса.

Сначала я изменяю ваш css на css ('zIndex', '89'), чтобы посмотреть, не повлияло ли это на результаты. В любом случае css ('zIndex' ...) или css ('z-index' ...), работал для меня .

Как я уже сказал, я не знаю jQuery. Но после тестирования следующего фрагмента в IE8, если он не работает, попробуйте изменить аргумент css на 'zIndex', просто ради ухмылки.

TEST:

$('#click').click(function () {
        $('#hello').css('z-index','89');
        var pid = document.getElementById('hello');
        alert('pid.style.zIndex: ' + pid.style.zIndex);
        pid.firstChild.nodeValue = "Hello2 " + pid.style.zIndex;
    }); 

  $('#click2').click(function () {
        $('#hello').css('z-index','10');
        var pid = document.getElementById('hello');
        alert('pid.style.zIndex: ' + pid.style.zIndex);
        pid.firstChild.nodeValue = "Hello2 " + pid.style.zIndex;
    }); 


});

Извините, что испортил код JQuery. : D

1 голос
/ 21 мая 2009

Элементы, для которых вы пытаетесь установить z-index на своей тестовой странице, не имеют CSS-позиции, поэтому изменение z-index на самом деле не будет работать.

Позиция добавления: относительная; или позиция: абсолютная; Свойства CSS должны позволять вам устанавливать их z-индексы.

...