Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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 悬停时的jquery正文不能以其他div为目标_Javascript_Jquery_Html_Scope - Fatal编程技术网

Javascript 悬停时的jquery正文不能以其他div为目标

Javascript 悬停时的jquery正文不能以其他div为目标,javascript,jquery,html,scope,Javascript,Jquery,Html,Scope,我正在尝试从以下位置访问我自己的javascript函数: $("body").on("mouseenter",".noteNode",function(){}); 问题似乎是,当我在上面的函数中时,jQuery将不允许我访问其他元素 让我进一步阐述: 我想使用的实际代码我已经跳过了: 我相信函数正在被调用,正如我所希望的那样,但是正如您所看到的,$(this)无法以悬停的实际div为目标,因此,当试图将此数据传递给另一个函数时,它就是没有到达-这是为什么?我相信这是一个范围的问题,但我已经尝

我正在尝试从以下位置访问我自己的javascript函数:

$("body").on("mouseenter",".noteNode",function(){});
问题似乎是,当我在上面的函数中时,jQuery将不允许我访问其他元素

让我进一步阐述: 我想使用的实际代码我已经跳过了:

我相信函数正在被调用,正如我所希望的那样,但是正如您所看到的,$(this)无法以悬停的实际div为目标,因此,当试图将此数据传递给另一个函数时,它就是没有到达-这是为什么?我相信这是一个范围的问题,但我已经尝试了一些方法来解决它,并搜索了s.O没有多少运气

我之所以需要在上使用$(“body”)。是因为我正在使用JS动态创建DIV(将悬停)

正如您所看到的,hover函数工作正常,并按其应该的方式启动,但完全无法访问DOM中我不理解的任何内容

[编辑]为了澄清:


我正试图将DIV的ID(由JS创建)传递给我自己的函数,我想在其中尝试访问DIVs offset参数,但我无法这样做,你会在我修改过的提琴中看到,我只是在我的警报框中“未定义”,这不是我想要的-我仍然相信这是因为范围问题。

试试这个更新过的提琴:


请为您的div分配唯一Id

试试这个代码

function myFunction(someVar){ alert(someVar); } 

$(document).ready(function(){
   $("body").append('<div class="noteNode" id="a">Note Node</div>');
   $("body").append('<div class="noteNode" id="b">Note Node</div>');
   $("body").append('<div class="noteNode" id="c">Note Node</div>');
});


$("body").on("mouseenter",".noteNode",function(){
    myFunction( $(this).attr("id") );
    alert( $(this).attr("id") );
});
function myFunction(someVar){alert(someVar);}
$(文档).ready(函数(){
$(“正文”).append('Note Node');
$(“正文”).append('Note Node');
$(“正文”).append('Note Node');
});
$(“body”).on(“mouseenter”,“.noteNode”,function(){
myFunction($(this.attr(“id”));
警报($(this.attr(“id”));
});

注意节点
没有为div分配id。它按预期工作<代码>ID未分配给您的分区:)-使用ID我的问题是错误的,我最终过度简化了我的问题。。。我应该编辑还是创建一个新问题?我使用了你的代码,并设法将其转化为以下内容:这是我想要的-因此event.target是我需要的-我想这是因为你正在将它传递到来自jQuery的函数调用中-而在我的问题中,我没有,我接受了这一点,因为即使我更新了问题,它也符合要求,基本上,我应该将事件传递给函数调用,而不是让它匿名(如果这是正确的措辞!)
function myFunction(someVar){ alert(someVar); } 

$(document).ready(function(){
   $("body").append('<div class="noteNode" id="a">Note Node</div>');
   $("body").append('<div class="noteNode" id="b">Note Node</div>');
   $("body").append('<div class="noteNode" id="c">Note Node</div>');
});


$("body").on("mouseenter",".noteNode",function(){
    myFunction( $(this).attr("id") );
    alert( $(this).attr("id") );
});