Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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_Html_Css - Fatal编程技术网

Javascript 如何向更改图像鼠标悬停事件添加淡入淡出?

Javascript 如何向更改图像鼠标悬停事件添加淡入淡出?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,这是迄今为止我的Javascript函数: function changeImg (){ document.getElementById('main').style.backgroundImage = "url('./img/map/maphv.png')" } function changeBack () { document.getElementById('main').style.backgroundImage = "url('./img/map/map.png')" }

这是迄今为止我的Javascript函数:

function changeImg (){
    document.getElementById('main').style.backgroundImage = "url('./img/map/maphv.png')"
}

function changeBack () {
    document.getElementById('main').style.backgroundImage = "url('./img/map/map.png')"
}
这是在HTML中:

<div id="main"> 
    <a data-title="Africa" href="collection/africa.html" onmouseover="mouseoversound.playclip();changeImg()" onmouseout="changeBack()"><img class="africa" src="./img/map/africa.png" height="50"/> </a>
所以CSS是非常不相关的,但我发布了它,以便您可以看到顶部悬停是如何淡入淡出的。我只是想将onmouseover事件中的淡入淡出添加到背景贴图主元素中

所以我真的只需要在Javascript函数中添加淡入淡出,然后将该函数添加到mouseover事件处理程序中


Javascript不是我的第一语言

如果可以使用jquery,那么可以执行以下操作

放弃Javascript

如果我没弄错你的问题的话,当你在一个元素上悬停时,你想在图像之间淡入淡出,对吗?这可以很容易地在纯CSS中完成

指定要设置背景图像动画的元素 添加与父元素大小相同的子元素。这可以是一个,也可以是一个带有背景图像的span或div 将子元素的不透明度设置为0,除非有人将鼠标悬停在父元素上。 HTML


Javascript非常棒,但在我个人看来,你应该避免在这样的简单动画中使用它,因为CSS完全可以自己完成它。

你能使用Jquery吗?基本上。。例如,链接头部中的文件并根据代码的外观编辑一些参数。感谢您的回复。。但我之所以在CSS顶部包含javascript事件,是因为当绝对定位的锚/按钮悬停在上方时。。我希望后面的整个背景图像通过淡入来改变图像。感谢您的回复。。我已经在javascript函数的脚本标记之间添加了上面的代码。我是否需要在头部添加或链接Jquery文件以使其正常工作?是,则需要链接Jquery。如果您的javascript代码正常工作,那么即使这样也应该正常工作。如果您想要code.jquery.com/jquery-1.11.1.min.js>Richa,这里有一个链接。。正如您在这里看到的,它似乎仍然不起作用。您确定添加了jquery链接吗。??它在控制台中显示为空。还要确保id和类是正确的,它工作正常吗??当你在非洲盘旋时,你想让对方消失吗??
#main {
 background-image: url(../img/map/map.png);
 background-size: 100%;
 background-repeat: no-repeat;
 width: 100%;
 height: 580px;
 position: relative;
 }

#main img.africa {
 top: 244px;
 left: 397px;
 height: 33.5%;
 position: absolute;
 width: 18%;
 opacity:0;
 }


#main img.africa:hover {
 top: 244px;
 left: 397px;
 height: 33.5%;
 position: absolute;
 width: 18%;
 opacity:1;
 transition: opacity .5s ease-in-out;
   -moz-transition: opacity .5s ease-in-out;
   -webkit-transition: opacity .5s ease-in-out;
 }
$("#main").on("mouseenter", function () {

    $(".africa").stop(true, true).fadeOut(); /***fadeIn or fadeOut***/

});
<div class="fading-bg">
    <img src="foo/bar.jpg" alt="stuff">
</div>
.fading-bg{
    position:relative;
    width: 100px;
    height: 100px;
    background: no-repeat center;
    background-size: cover;
}

.fading-bg img{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    -webkit-transition: opacity 500ms;
    transition: opacity 500ms;
}

.fading-bg:hover img{
    opacity: 1;
}