开发者

Anyone know how to get the z-index of a div tag that returns the actual number and not 'Auto'?

This gives me auto: I need the number, so I can move one 开发者_StackOverflow中文版above the other?

// Swop div index
$("#panel div").each(function(){
     alert($(this).css('z-index'));
});


I don't think that browsers handle the z-index the way you seem to be expecting them to. For elements without a z-index, there just isn't a value there (which is basically what "auto" means).


Elements with a z-index of auto are laid out in the order they appear in the document tree.

If you want one on top, make its z-index equal to the childNodes length of the parent. (or one more than the largest z-index of any of the child nodes, if there are any set).

Be sure to set the z-index as a string and not an integer, and parseInt to compare any existing z-indexes.


try this

window.getZIndex = function (e) {      
  var z = window.document.defaultView.getComputedStyle(e).getPropertyValue('z-index');
  if (isNaN(z)) return window.getZIndex(e.parentNode);
  return z; 
};

usage

var myZIndex = window.getZIndex($('#myelementid')[0]);

(if parent gets to root it will return 0)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜