我注意到您的代码的第一件事(可能是也可能不是问题)是您缺少 jQueryon
事件的数据参数。您还将希望将您的事件应用于document.body
而不是document
.
$(document.body/*changed*/).on('click', '.icon-layer-up', {}/*added*/, function() {
接下来,您总是先设置currentIndex
为auto
,然后再设置为0
,而不是检查它是否等于auto
。
if ( currentIndex ==/*fixed*/ "auto" ) {
此外,您最初设置currentIndex
为字符串,当您尝试增加它时,它只会将字符串转换为数字。您必须首先尝试将其转换为 a Number
,检查以确保它是 a Number
,然后将其递增。
所以固定的代码应该是:
$(document.body).on('click', '.icon-layer-up', {}, function() {
console.log($(this).parent(".ui-wrapper").css("z-index"));
var currentIndex = Number($(this).parent(".ui-wrapper").css("z-index"));
if ( isNaN(currentIndex) ) { // if is not a number, set it to 0
currentIndex = 0;
}
var num = currentIndex++;
$(this).parent(".ui-wrapper").css("z-index", num );
});
接下来,请确保您阅读了z-index
,并了解它是如何工作的。z-index
不会应用于默认position
为 的元素static
。尝试将您的元素设置position: relative;
为您尝试应用的元素z-index
。
参考z-index
:
了解 CSS z-index
添加 z-index