- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想检测两者的悬停事件:绝对定位的元素和位于其下方的元素。
这里是简化的问题:
HTML:
<div id="content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>
<div id="output"></div>
<div id="output2"></div>
<svg width="40" height="40" id="svg">
<circle r="20" cx="20" cy="20"></circle>
</svg>
CSS:
#content {
background-color: green;
}
#svg {
position: absolute;
left: 100px;
top: 15px;
}
JS:
var output = $("#output");
$("#content").mouseenter(function(e){
output.text("in text");
}).mouseout(function(e) {
output.text("out text");
});
var output2 = $("#output2");
$("#svg").mouseenter(function(e){
output2.text("in svg");
}).mouseleave(function(e) {
output2.text("out svg");
});
和 jsfiddle:http://jsfiddle.net/r4xgq9s8/1/ .
编辑:
我想要得到以下结果:
最佳答案
那行不通,因为圆圈隐藏了它下面的内容。但是,您可以查看以下可能性:
制作内容的圆子。这样悬停事件就会冒泡。这样圆圈的所有内容都会输出“over text”和“over svg”,这并不是你真正想要的
写一点数学并检查你是否读完了课文
我将在这里为第二种方法尝试一种方法:
var output = $("#output");
var inCircle = false;
$("#content").mouseenter(function(e) {
output.text("in text");
}).mouseout(function(e) {
output.text("out text");
});
var output2 = $("#output2");
$("#svg").mouseenter(function(e) {
output2.text("in svg");
inCircle = true;
}).mouseleave(function(e) {
output2.text("out svg");
inCircle = false;
});
$(document).mousemove(function(e) {
if (!inCircle) return; // When not in circle we return here
var $content = $('#content');
var offset = $content.offset();
// Check if in content-element
if (e.pageX > offset.left &&
e.pageX < offset.left + $content.width() &&
e.pageY > offset.top &&
e.pageY < offset.top + $content.height()) {
$content.trigger('mouseenter');
} else {
$content.trigger('mouseout');
}
});
#content {
background-color: green;
}
#svg {
position: absolute;
left: 100px;
top: 15px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>
<div id="output"></div>
<div id="output2"></div>
<svg width="40" height="40" id="svg">
<circle r="20" cx="20" cy="20"></circle>
</svg>
这里的技巧是我们监听文档-mousemove。每当我们在圆圈中并且鼠标移到内容上时,我们都会触发内容上的鼠标输入。反之亦然,使用 mouseleave。
关于javascript触发器悬停在绝对元素和绝对元素下的元素上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28024529/
我想要做的是在每个框的蓝色标题之后获取红色文本。 看来我必须添加另一个 div?我已经添加并修改了 .card-indus img 的位置,但结果永远不是我想要的。 你知道为什么即使我将 positi
所以我一直在努力掌握绝对和相对定位的诀窍。关于这个主题有很多教程和问题,我已尽力理解它们。除了这一点,我大部分时间都很好。我正在创建一个页面,其中有较小的缩略图图像,用户可以选择单击并展开图像。为此,
下面是我正在处理的代码。如您所见,有一个“#parent”div 和一个“#child”div。 '#child' div 有一个未定义的高度,这是因为有时,'#child' 的高度小于或长于它的父级
我目前正在创建一个看起来有点像这样的固定 header 。 https://gyazo.com/e0bab8ba195e33110b19123c7fc3c568 Logo 始终位于左侧,小按钮始终位于
我怎样才能得到一个绝对定位的子 div,当它放在父 div 的范围之外时不显示? https://jsfiddle.net/knp9ebys/9/ .papa { background:red;
如果我对 CSS 显得相当“菜鸟”,我深表歉意。我一直在尝试设置以下... #0 { width: 100%; height: y; border: 1px solid black; } #
很长一段时间以来,我一直在摆弄一个特定的布局问题,但我显然采用了错误的方式。 以下是分解为基本组成部分的方法: SOME HEADER
我创建了几个虚拟 Controller ,我希望能够从当前的 http 请求中获取 url。 例如: http://www.site.com/app_1/default.aspx ===> http:
我创建了几个虚拟 Controller ,我希望能够从当前的 http 请求中获取 url。 例如: http://www.site.com/app_1/default.aspx ===> http:
我想知道是否有一个库在某处提供受新类型保护的 FilePath 类型。我找到了我想要的http://hackage.haskell.org/package/darcs-2.8.4/docs/src/D
如果我尝试使用以下方式连接到我的嵌入式数据库: private static String url = "jdbc:sqlite:~/hr4413/pkg/sqlite/Models_R_US.db"
所以我是 django 的新手,我一直在研究 PHP CodeIgniter,其中将绝对 URL 放入 href 我通过调用 URL 帮助程序使用了一个名为 base_url 的函数 它给出的输出类
我有一个小问题。 我在其他 div 中有一些图像元素的容器 div。像这样的东西: 我需要将容器垂直居中,但我不能使用顶部:-healfHeight; mar
我有一个带有 inline-block css 位置的列表(div)。里面有一个 relative 定位的 ul 是隐藏的。所以我试图通过添加一些类将这个 div 转换为 absolute 。通常,当
我正在尝试设置一个卡住列,唯一需要解决的问题是同一行上其他 td 的高度不会扩展以匹配绝对定位 td 的高度。由于卡住标题中的文本是任意的,它可以跨越多行。 如果它不是绝对定位的,那么这将迫使同一行中
这个问题在这里已经有了答案: Centering text vertically and horizontally in a div (1 个回答) 关闭 5 年前。
当它的位置绝对时,我试图使一个框宽度为 100%? 下图是我想要做的 https://i.imgur.com/qMaT361.gif float .box1 { position:re
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and t
我有 3 个 div,都是 positioned: absolute,但是我想要填充窗口宽度的 div 只会适应其中文本的长度。我希望黄色 div #help 填充窗口的其余部分。 我知道这听起来很菜
这个问题在这里已经有了答案: Retrieve the position (X,Y) of an HTML element (32 个答案) 关闭 8 年前。 有时候,当我请求某个对象的.posit
我是一名优秀的程序员,十分优秀!