待消除的元素按图层分布,判断元素是否被覆盖,分为3个情况:
1、能被同层的元素覆盖
2、只能被上层的元素覆盖
3、能被上层及以上图层的元素覆盖
第1点的实现:获取该元素与相邻元素的叠加面积,如叠加面积大于该元素的20%或者30%,则可以判断是该元素被覆盖。同时也要考虑该元素的zIndex。
第2点的实现:取出该元素,得到图层f, 再扫描f+1图层的所有元素,检测该元素与其他元素的叠加面积,如叠加面积大于该元素的20%或者30%,则可以判断是该元素被覆盖。
第3点的实现:类似第2点,如果不被覆盖,则扫描f+2图层的所有元素。。。直到扫描完所有上层图层的元素。