Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.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,我使用jquery查找当前悬停的元素。我的html如下所示: <div class="parent myclass"> parent <div class="child myclass"> child </div> </div> 这是css: .parent{ width: 100px; height:100px; display:block; background-color:#eee; marg

我使用
jquery
查找当前悬停的元素。我的html如下所示:

<div class="parent myclass">
    parent
    <div class="child myclass">
        child
    </div>    
</div>
这是
css

.parent{
width: 100px;
height:100px;
display:block;
background-color:#eee;
margin:80px;
}

.child{
width: 70px;
height:70px;
display:block;
background-color:#00f;
}

.hovered{
-webkit-box-shadow: inset 0px 0px 0px 2px #f00;
-moz-box-shadow: inset 0px 0px 0px 2px #f00;
box-shadow: inset 0px 0px 0px 2px #f00; 
}
edit2:
我只知道这个元素有class
myclass
。我不知道元素名是什么,也不知道它们有什么类


谢谢。

您在子元素上有一个
子类,因此纯CSS解决方案是:

.child.myclass:hover {
  border: 1px solid black;
}
…或添加悬停的
类,但现代浏览器(甚至IE8)确实不需要它:

如果
child
类实际上不存在(您添加它只是为了澄清您的问题),我会添加它,无论是在编写HTML时,还是在不可避免的情况下,在页面加载时通过JavaScript添加它。无论哪种方式,我都会使用CSS来实现实际的悬停效果

下面是一个通过JavaScript(和CSS悬停效果)添加该类的示例:

$(“.myclass”).filter(函数(){
返回$(this).parents(“.myclass”).length>0;
}).addClass(“儿童”)
.child.myclass:悬停{
边框:1px纯黑;
}

父母亲
小孩

在子元素上有一个
子类,因此纯CSS解决方案是:

.child.myclass:hover {
  border: 1px solid black;
}
…或添加悬停的
类,但现代浏览器(甚至IE8)确实不需要它:

如果
child
类实际上不存在(您添加它只是为了澄清您的问题),我会添加它,无论是在编写HTML时,还是在不可避免的情况下,在页面加载时通过JavaScript添加它。无论哪种方式,我都会使用CSS来实现实际的悬停效果

下面是一个通过JavaScript(和CSS悬停效果)添加该类的示例:

$(“.myclass”).filter(函数(){
返回$(this).parents(“.myclass”).length>0;
}).addClass(“儿童”)
.child.myclass:悬停{
边框:1px纯黑;
}

父母亲
小孩

在子元素上有一个
子类,因此纯CSS解决方案是:

.child.myclass:hover {
  border: 1px solid black;
}
…或添加悬停的
类,但现代浏览器(甚至IE8)确实不需要它:

如果
child
类实际上不存在(您添加它只是为了澄清您的问题),我会添加它,无论是在编写HTML时,还是在不可避免的情况下,在页面加载时通过JavaScript添加它。无论哪种方式,我都会使用CSS来实现实际的悬停效果

下面是一个通过JavaScript(和CSS悬停效果)添加该类的示例:

$(“.myclass”).filter(函数(){
返回$(this).parents(“.myclass”).length>0;
}).addClass(“儿童”)
.child.myclass:悬停{
边框:1px纯黑;
}

父母亲
小孩

在子元素上有一个
子类,因此纯CSS解决方案是:

.child.myclass:hover {
  border: 1px solid black;
}
…或添加悬停的
类,但现代浏览器(甚至IE8)确实不需要它:

如果
child
类实际上不存在(您添加它只是为了澄清您的问题),我会添加它,无论是在编写HTML时,还是在不可避免的情况下,在页面加载时通过JavaScript添加它。无论哪种方式,我都会使用CSS来实现实际的悬停效果

下面是一个通过JavaScript(和CSS悬停效果)添加该类的示例:

$(“.myclass”).filter(函数(){
返回$(this).parents(“.myclass”).length>0;
}).addClass(“儿童”)
.child.myclass:悬停{
边框:1px纯黑;
}

父母亲
小孩

您可以使用如下所示的方法在鼠标位置找到特定元素:

$('.myclass').mouseover(函数(e){
var elm=document.elementFromPoint(e.pageX,e.pageY);
$(elm.addClass('hovered');
}).mouseout(函数(){
$(this.removeClass('hovered');
});
.parent{
宽度:100px;
高度:100px;
显示:块;
背景色:#eee;
利润率:80px;
}
.孩子{
宽度:70px;
高度:70像素;
显示:块;
背景色:#00f;
}
.盘旋{
-webkit盒阴影:插入0px 0px 0px 2px#f00;
-moz盒阴影:插入0px 0px 0px 2px#f00;
盒影:插入0px 0px 0px 2px#f00;
}

父母亲
小孩

您可以使用如下所示的方法在鼠标位置找到特定元素:

$('.myclass').mouseover(函数(e){
var elm=document.elementFromPoint(e.pageX,e.pageY);
$(elm.addClass('hovered');
}).mouseout(函数(){
$(this.removeClass('hovered');
});
.parent{
宽度:100px;
高度:100px;
显示:块;
背景色:#eee;
利润率:80px;
}
.孩子{
宽度:70px;
高度:70像素;
显示:块;
背景色:#00f;
}
.盘旋{
-webkit盒阴影:插入0px 0px 0px 2px#f00;
-moz盒阴影:插入0px 0px 0px 2px#f00;
盒影:插入0px 0px 0px 2px#f00;
}

父母亲
小孩

您可以使用如下所示的方法在鼠标位置找到特定元素:

$('.myclass').mouseover(函数(e){
var elm=document.elementFromPoint(e.pageX,e.pageY);
$(elm.addClass('hovered');
}).mouseout(函数(){
$(this.removeClass('hovered');
});
.parent{
宽度:100px;
高度:100px;
显示:块;
背景色:#eee;
利润率:80px;
}
.孩子{
宽度:70px;
高度:70像素;
显示:块;
背景色:#00f;
}
.盘旋{
-webkit盒阴影:插入0px 0px 0px 2px#f00;
-moz盒阴影:插入0px 0px 0px 2px#f00;
盒影:插入0px 0px 0px 2px#f00;
}

父母亲
小孩

您可以使用如下所示的方法在鼠标位置找到特定元素:

$('.myclass').mouseover(函数(e){
var elm=document.elementFromPoint(e.pageX,e.pageY);
$(elm.addClass('hovered');
}).mouseout(函数(){
$(this.removeClass('悬停')
:has(selector)  $("div:has(p)") 

All div elements that have a p element