Я хотел бы определить z-индекс элемента на HTML-странице из кода. Я использую jQuery.
jQuery позволит мне проверить примененный z-индекс, используя $ (element) .css ("z-index"). Если z-индекс не установлен для этого элемента напрямую, Firefox возвращает «auto», а IE возвращает «0». Эффективный z-индекс этого узла зависит от z-индекса его контейнера.
Я подумал, что мог бы тогда рассчитать эффективный z-индекс, просматривая узел и его родителей, пока не будет найдено значение z-index. Проблема в том, что, по крайней мере в IE, я не могу устранить неоднозначность элемента с z-индексом 0 от элемента, который унаследует z-индекс своего родителя, поскольку в обоих случаях .css ("z-index") возвращает 0 Любые мысли о том, как рассчитать фактический z-индекс элемента?
Если вы хотите поэкспериментировать, вы можете использовать этот код. На IE он выведет «0», «0», «0», «300». В Firefox он выведет «auto», «auto», «0», «300».
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<script type="text/javascript">
alert($("<div></div>").css("z-index"));
alert($("<div style='position:relative'></div>").css("z-index"));
alert($("<div style='z-index:0'></div>").css("z-index"));
alert($("<div style='z-index:100'></div>").css("z-index"));
</script>
</body>
</html>