Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 找不到基于属性的元素_Javascript_Jquery - Fatal编程技术网

Javascript 找不到基于属性的元素

Javascript 找不到基于属性的元素,javascript,jquery,Javascript,Jquery,当鼠标悬停在另一个元素上时,我试图为一个元素引发一个mouseenter事件。我正在尝试根据数据属性查找元素: $("#modal").on("mouseenter", ".jq_pin", function(e) { var attr = $(this).data("abbr"); var els = $(".jq_mapPoint"); var el = els.find("[data-abbr='" + attr + "']");

当鼠标悬停在另一个元素上时,我试图为一个元素引发一个
mouseenter
事件。我正在尝试根据数据属性查找元素:

 $("#modal").on("mouseenter", ".jq_pin", function(e) {
        var attr = $(this).data("abbr");
        var els = $(".jq_mapPoint");
        var el = els.find("[data-abbr='" + attr  + "']");
        el.trigger(e.type);
    });
我的事件触发,调试我可以看到一个元素列表,其中包含
jq\u mapPoint
类,其中一个具有匹配的数据属性,但el的长度始终为0

包含事件的元素:

<li class="jq_pin"data-abbr="N">HI</li>
你好 我试图瞄准的元素:

<div style="position:absolute;left:59%;bottom:72%" class="jq_mapPoint" data-abbr="N">N</div>
N
您需要而不是
.find()

将匹配的元素集减少为与选择器匹配或通过函数测试的元素集

而不是

var el = els.find("[data-abbr='" + attr  + "']");
您需要而不是
.find()

将匹配的元素集减少为与选择器匹配或通过函数测试的元素集

而不是

var el = els.find("[data-abbr='" + attr  + "']");

它可能需要所有选择器
*

theels.find("*[data-abbr='" + attr  + "']");

它可能需要所有选择器
*

theels.find("*[data-abbr='" + attr  + "']");

标记在哪里
els
将包含许多元素,我猜..我认为您需要循环使用els。每个元素的完整文档请参见jQuery,com是的,有很多els,不会为我找到仅循环使用?标记在哪里
els
将包含许多元素。我想您需要循环使用els。每个元素的完整文档请参见jQuery,com。是的,有很多els,不会为我找到只是循环使用吗?@AmrElgarhy,查找元素的后代,其中OP需要过滤结果集或
$(“.jq_映射点[data abbr=”+attr+“]”)
@AmrElgarhy,查找OP需要过滤结果集的元素的后代或(“.jq_映射点[data abbr=”“+attr+”])