Change background image on link hover

大兔子大兔子 提交于 2019-12-02 14:17:36

问题


So I have this problem, which I couldn't find, even though I did a thorough websearch.

I am making my portfolio, and the background is a picture of a woman, located in the center. On the left I have a nav bar with link to other pages.

What I basicly want, is the background image to change when I hover over one of the links. Whether it's through CSS, Javascript or JQuery, I want to know if it's possible.

Thank you in advance.

Edit: Sorry, I'll try to provide the best I can.

HTML

<link rel="stylesheet" type="text/css" href="stylesheet.css">
<script src="jquery-1.10.2.min.js"></script>
<script src="jquery.js"></script>


<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>

<div class="header">/jacob gerlif pilegaard/</div>
<div class="underheader">portfolio</div>
<ul>
    <li><a href="index.html">Home</a></li>
    <li><a href="about.html">About</a></li>
    <li><a href="gallery.html"">Gallery</a></li>
    <li><a href="contact.html">Contact</a></li>
    </ul> 
 <h1>About me...</h1>
 <p> bla bla bla bla bla</p>
 <div id="circles"></div>

This is the basic html. The id="baggrund" is the image I want to change to something else.

CSS

#baggrund {
background-image: url(images/laerkeryg.jpg);
background-repeat: no-repeat;
width: 720px;
height: 394px;
position: absolute;
left: 805px;
top: 10%;}

This is the CSS for the image I want to have replaced.

Jquery

$( document ).ready(function() {
    $("#first").hover(function () {
    $("baggrund").css("background-image", 'url("images/Kat5.jpg")');
});
});

Hope this helps, and thanks again.


回答1:


Here's a generic jquery answer to your question:

$('a.class').on('mousein', function(){
   $('#portfolio').css('background-image', 'url("other.jpg")');
});
$('a.class').on('mouseout', function(){, function(){
  $('#portfolio').css('background-image', 'url("woman.jpg")');
});



回答2:


Yes, here's a rough example via JSFiddle http://jsfiddle.net/dGnMX/

<nav>
     <a id="first">Link 1</a>
     <a id="second">Link 1</a>
     <a id="third">Link 1</a>
    </nav>

$("#first").click(function () {

    $("body").css("background-image", 'url("http://static.bbc.co.uk/solarsystem/img/ic/640/collections/space_exploration/space_exploration_large.jpg")');

});



$("#second").click(function () {

    $("body").css("background-image", 'url("http://i.telegraph.co.uk/multimedia/archive/02179/Milky-Way_2179177b.jpg")');

});

$("#third").click(function () {

    $("body").css("background-image", 'url("http://www.thatsreallypossible.com/wp-content/uploads/2012/12/Space-Colonialisation.jpg")');

});



回答3:


You don't need JavaScript to do that, you can use :hover pseudo-class on pure CSS 2.1:

#baggrund:hover {
    background-image: url('images/Kat5.jpg');
}



回答4:


Here's perfect tested solution:

$(document).ready(function() {

        $('a.class').hover(

           function () {
              $('#portfolio').css('background-image', 'url("other.jpg")');
           }, 

           function () {
              $('#portfolio').css('background-image', 'url("woman.jpg")');
           }
        );

     });


来源:https://stackoverflow.com/questions/18858714/change-background-image-on-link-hover

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!