|
@@ -35,6 +35,16 @@ const getZIndex = computed(() => {
|
|
|
return props.zIndex || calcZIndex();
|
|
|
});
|
|
|
|
|
|
+/**
|
|
|
+ * 排除ant-message和loading:9999的z-index
|
|
|
+ */
|
|
|
+const zIndexExcludeClass = ['ant-message', 'loading'];
|
|
|
+function isZIndexExcludeClass(element: Element) {
|
|
|
+ return zIndexExcludeClass.some((className) =>
|
|
|
+ element.classList.contains(className),
|
|
|
+ );
|
|
|
+}
|
|
|
+
|
|
|
/**
|
|
|
* 获取最大的zIndex值
|
|
|
*/
|
|
@@ -44,7 +54,11 @@ function calcZIndex() {
|
|
|
[...elements].forEach((element) => {
|
|
|
const style = window.getComputedStyle(element);
|
|
|
const zIndex = style.getPropertyValue('z-index');
|
|
|
- if (zIndex && !Number.isNaN(Number.parseInt(zIndex))) {
|
|
|
+ if (
|
|
|
+ zIndex &&
|
|
|
+ !Number.isNaN(Number.parseInt(zIndex)) &&
|
|
|
+ !isZIndexExcludeClass(element)
|
|
|
+ ) {
|
|
|
maxZ = Math.max(maxZ, Number.parseInt(zIndex));
|
|
|
}
|
|
|
});
|