Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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 如何针对鼠标悬停事件上的元素id值进行测试?_Javascript_Jquery_Html_Angularjs - Fatal编程技术网

Javascript 如何针对鼠标悬停事件上的元素id值进行测试?

Javascript 如何针对鼠标悬停事件上的元素id值进行测试?,javascript,jquery,html,angularjs,Javascript,Jquery,Html,Angularjs,不知是否有人能帮助我理解如何在鼠标悬停事件中根据元素的ID值进行测试。我想我必须用“这个” 我为ID获取的值为“未定义” 函数mouseOver(){ var e=$(this.attr(“ID”);//需要此位的帮助吗 如果(e==(“第2012行”)){ 警报(e) }否则{ 警报(e); } } {{x.year} {{x.totalEvents}} {{x.customers}} {x.avgDuration} 使用ng mouseenter和ng mouseleave,并将变量x传

不知是否有人能帮助我理解如何在鼠标悬停事件中根据元素的ID值进行测试。我想我必须用“这个”

我为ID获取的值为“未定义”

函数mouseOver(){
var e=$(this.attr(“ID”);//需要此位的帮助吗
如果(e==(“第2012行”)){
警报(e)
}否则{
警报(e);
}
}

{{x.year}
{{x.totalEvents}}
{{x.customers}}
{x.avgDuration}

使用
ng mouseenter
ng mouseleave
,并将变量
x
传递给两个:

<td id=row{{x.year}} ng-mouseenter ="mouseOver(x)" ng-mouseleave="mouseOut(x)">{{x.year}}</td>

使用
ng mouseenter
ng mouseleave
,并将变量
x
传递给两个:

<td id=row{{x.year}} ng-mouseenter ="mouseOver(x)" ng-mouseleave="mouseOut(x)">{{x.year}}</td>

您可以通过在
onmouseover
内部传递
this
onmouseout
函数直接传递当前dom元素,如:

<td id=row{{x.year}} onmouseover="mouseOver(this)" onmouseout="mouseOut(this)">{{x.year}}</td>

您可以通过在
onmouseover
内部传递
this
onmouseout
函数直接传递当前dom元素,如:

<td id=row{{x.year}} onmouseover="mouseOver(this)" onmouseout="mouseOut(this)">{{x.year}}</td>

您只需要使用以下信息

在HTML中,将其传递到函数mouseOver(this)中

2019
现在在函数中使用以下命令

功能鼠标盖(ele){
var eleId=$(ele).attr(“Id”);//需要此位的帮助吗
如果(eleId==“yourid”){
警报(eleId)
}否则{
警报(eleId);
}
}

您只需要使用以下信息

在HTML中,将其传递到函数mouseOver(this)中

2019
现在在函数中使用以下命令

功能鼠标盖(ele){
var eleId=$(ele).attr(“Id”);//需要此位的帮助吗
如果(eleId==“yourid”){
警报(eleId)
}否则{
警报(eleId);
}
}
使用
ng鼠标*
指令 对于AngularJS框架,应该避免使用
onmouseover
属性。而是使用
ng mouseover
指令。它与AngularJS框架集成,并在AngularJS执行上下文中计算表达式。只有在AngularJS执行上下文中应用的操作才会受益于AngularJS数据绑定、异常处理、属性监视等

有关详细信息,请参阅

  • AngularJS没有
    ng mouseout
    指令

ng鼠标盖
带有
ng repeat
特殊变量
ng repeat
指令使用该指令设置的特殊变量创建子作用域。其中之一是
$index

<div ng-repeat="x in arr">
   <p ng-mouseover="mouseOver($index)>{{x.year}}</p>
</div>
有关详细信息,请参阅


ng鼠标盖
带有
$event
类似于
ngMouseover
ngFocus
的指令在该表达式的范围内公开
$event
对象。该对象是存在jQuery时的实例或类似的
jqLite
对象


益智
有关详细信息,请参阅

使用
ng鼠标*
指令 对于AngularJS框架,应该避免使用
onmouseover
属性。而是使用
ng mouseover
指令。它与AngularJS框架集成,并在AngularJS执行上下文中计算表达式。只有在AngularJS执行上下文中应用的操作才会受益于AngularJS数据绑定、异常处理、属性监视等

有关详细信息,请参阅

  • AngularJS没有
    ng mouseout
    指令

ng鼠标盖
带有
ng repeat
特殊变量
ng repeat
指令使用该指令设置的特殊变量创建子作用域。其中之一是
$index

<div ng-repeat="x in arr">
   <p ng-mouseover="mouseOver($index)>{{x.year}}</p>
</div>
有关详细信息,请参阅


ng鼠标盖
带有
$event
类似于
ngMouseover
ngFocus
的指令在该表达式的范围内公开
$event
对象。该对象是存在jQuery时的实例或类似的
jqLite
对象


益智
有关详细信息,请参阅


您的
mouseOver
函数将接收一个事件对象。鼠标悬停的元素是
event.target
。因此,使用vanilla js,您只需执行
const id=event.target.getAttribute('id')
@JeremyHarris这在使用内联
onX
属性时是不正确的,就像OP一样。他可以传入事件,甚至可以传入id属性值本身。不过,更好的方法是使用不引人注目的事件处理程序。我想补充一下@Rorymcrossan所说的,因为@JeremyHarris的评论收到了太多错误的投票。元素的
onmouseover
属性和
onmouseover
属性之间有一个重要的区别。属性由HTML设置,属性由JavaScript设置。他们的行为也不同。浏览器将该属性作为JavaScript语句进行计算。它的函数不接收事件对象。另一方面,属性作为事件侦听器函数进行计算,第一个参数是事件。您的
mouseOver
函数将接收事件对象。鼠标悬停的元素是
event.target
。因此,使用vanilla js,您只需执行
const id=event.target.getAttribute('id')
@JeremyHarris这在使用内联
onX
属性时是不正确的,就像OP一样。他可以传入事件,甚至可以传入id属性值本身。不过,更好的方法是使用不引人注目的事件处理程序。我想补充一下@Rorymcrossan所说的,因为@JeremyHarris的评论收到了太多错误的投票。这两者之间有一个重要的区别