gpt4 book ai didi

javascript - 在鼠标悬停时打开 div 的不透明度

转载 作者:行者123 更新时间:2023-11-28 14:08:09 27 4
gpt4 key购买 nike

当我将鼠标移到 div #header 上时,我想打开 div #overlay opacity: 1。同样重要的是 #header 仍然是相对的,所以它不会影响它。

我尝试使用 jQuery(下面的代码)执行此操作,但它根本不起作用。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Overlay Test</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
$("#header").hover(function(){
$("#overlay").fadeTo(200, 1);
}, function(){
$("#overlay").fadeTo(200, 0, function(){
$(this).hide();
});
});
</script>
<style>
body {
padding: 0;
margin: 0;
font-family: Arial, Helvetica;
font-size: 1rem;
color: #7a7a7a;
}
#header {
padding: 20px 60px;
position:relative;
height:auto;
width: auto;
background: #f6f6f6;
text-align: center;
z-index: 10;
}
#content {
padding: 60px;
text-align: center;
z-index: 1;
background: #D1D1D1;
width: auto;
height: auto;
}
#overlay {
background: rgba(0, 0, 0, 0.5);
opacity:0;
height: 100%;
left: 0;
top: 0;
position: fixed;
width: 100%;
z-index: 5;

</style>
</head>

<body>
<div id="header">
<h1>Header menu area</h1>
</div>
<div id="content"><h3>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. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</h3></div>
<div id="overlay"></div>
</body>
</html>

JSFiddle:https://jsfiddle.net/tuuni/o5pLuvr1/2/

如果我将鼠标移到它上面,我希望标题看起来像这样:

enter image description here

最佳答案

JSFiddle 和您在问题中包含的代码都不起作用,但由于不同的原因它们不起作用。 JSFiddle 不起作用,因为您没有包含 jQuery 库。但除此之外,它应该工作。但让我们专注于您提供的代码。让我们看看您的代码,其中省略了不太相关的部分。

<!DOCTYPE html>
<html>
<head>
<!-- Other Tags -->
<script>
$("#header").hover(
function() {
$("#overlay").fadeTo(200, 1);
},
function() {
$("#overlay").fadeTo(200, 0, function() {
$(this).hide();
});
}
);
</script>
<!-- Other Tags -->
</head>
<body>
<div id="header">
<h1>Header menu area</h1>
</div>
<div id="content">
<h3>
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. Duis aute irure dolor in reprehenderit in voluptate
velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
occaecat cupidatat non proident, sunt in culpa qui officia deserunt
mollit anim id est laborum.
</h3>
</div>
<div id="overlay"></div>
</body>
</html>

$("#header", ...) 在正文中的内容在 DOM 中创建之前运行,因此悬停事件监听器无法附加到任何内容。您可以通过将其全部包装在 $(document).ready() 调用中来解决此问题,如下所示。这会等待在附加悬停事件监听器之前在 DOM 中创建正文。你可以read more at the jQuery docs site .

$(document).ready(function() {
$("#header").hover(
function() {
$("#overlay").fadeTo(200, 1);
},
function() {
$("#overlay").fadeTo(200, 0, function() {
$(this).hide();
});
}
);
});

关于javascript - 在鼠标悬停时打开 div 的不透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56925646/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com