我正在使用下面的句子来获取某个位置的元素,但他采用了第一个......
$(this.cTaskItem[0]).mouseup(function(event){
var posX = event.clientX, posY = event.clientY;
var overElem = document.elementFromPoint(posX, posY);
overElem.style.border = "3px solid red";
});
我想知道如何获取给定位置和 Z-Index 的元素。
谢谢你
如果第一个元素(由
document.elementFromPoint(posX, posY)
选择的元素)不应该是可点击的,您可以为其设置 css 属性 pointer-events: none;
,它将不再被选择
正如@t.niese上面建议的,你可以这样做:
$(this.cTaskItem[0]).mouseup(function(event)
{
var posX = event.clientX, posY = event.clientY;
var elements = [];
var elm = document.elementFromPoint(posX, posY);
while(elm.tagName != "HTML")
{
elements.push(elm);
elm.style.display = "none";
elm = document.elementFromPoint(posX, posY);
}
});
然后您需要做的就是浏览您的
elements
数组并选择您需要的。