[英]Background image change on hover of a different div
我是网页设计的新手,现在正努力创建自己的网站的一部分,我需要以某种方式实现这一目标:
当“主体背景”的一部分被悬停时,将背景更改为“ B”,而当鼠标不在该部分上时,我需要将其更改回背景“ A”。
到目前为止,这就是我所拥有的:(我被告知要尝试使用javascript,但是由于某些原因它无法正常工作!) jsfiddle.net
就目前而言,我的html头上有javascript,如下所示:
<head>
<script>
$('#hover').hover(function() {
$('body').removeClass('nohover').addClass('hover');
}, function(){
$('body').addClass('nohover').removeClass('hover');
});
</script>
</head>
这是我想在悬停椰子时显示的内容: http ://i.stack.imgur.com/ek98U.jpg
您的#hover
元素需要具有背景色或图像,或具有使其可悬停的东西。
#hover {
/* your styles ... */
background-color:#fff; /* or something */
}
另外,是的,请确保已在Frameworks&Extensions侧栏中选择了jQuery。
根据OP评论更新了答案
在您的jsFiddle中,您需要选择JQuery库。 您的代码工作正常。
在Frameworks&Extensions上,从顶部的下拉框选择一个JQuery库。
为了扩展我的答案,我认为您的代码比需要的复杂。 这是修订(简化)的版本:
<div id="coconut"></div>
body {
background-image:url('http://s5.postimg.org/6qbplw2xj/Background_main.jpg');
background-position:top center;
background-repeat: no-repeat;
background-color:black;
height:800px;
width:800px;
}
#coconut {
position:absolute;
width:450px;
height:400px;
top:300px;
right:20px;
border: 2px solid red;
}
.hover {
background-image:url('http://s5.postimg.org/8jj7nydhz/Background_main.jpg');
}
$('#coconut').hover(function() {
$('body').addClass('hover');
}, function(){
$('body').removeClass('hover');
});
小提琴: http : //jsfiddle.net/wQdVv/7/
使用:hover
伪类而不是jQuery。
#hover:hover {
/* your code */
}
而且,对于透明图像,应使用.png
而不是.jpg
。
谢谢你,@ gvee,我可以在我的jsfiddle上运行它,但是在我的网站上却不起作用:(我从Google添加了jquery库,但是当我将椰子悬停时没有任何反应:( – @rafacardosoc
我认为这可能是因为jsFiddle为您添加了一些您没有意识到的额外代码。
这是供您使用的完整html脚本。 请特别注意以$(document).ready(...
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#coconut').hover(function() {
$('body').addClass('hover');
}, function(){
$('body').removeClass('hover');
});
});
</script>
<style type="text/css">
body
{
background-image: url('http://s5.postimg.org/6qbplw2xj/Background_main.jpg');
background-position: top center;
background-repeat: no-repeat;
background-color: black;
height: 800px;
width: 800px;
}
#coconut
{
position: absolute;
width: 450px;
height: 400px;
top: 300px;
right: 20px;
border: 2px solid red;
}
.hover
{
background-image: url('http://s5.postimg.org/8jj7nydhz/Background_main.jpg');
}
</style>
</head>
<body>
<div id="coconut"></div>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.