如何在鼠标中更改div背景图像?

时间:2010-06-21 17:02:10

标签: jquery css onmouseover

我有一些列表项,如 -

<div class="smenu">
                <ul>
                  <li ><a href="index.html"><img src="images/solution1.jpg" border="0"></a></li>
                  <li ><a href="#"><img src="images/solution2.jpg" border="0"></a></li>
                  <li ><a href="#"><img src="images/solution3.jpg" border="0"></a></li>
                  <li ><a href="#"><img src="images/solution4.jpg" border="0"></a></li>
                  <li ><a href="#"><img src="images/solution5.jpg" border="0"></a></li>                   
                </ul>
              </div>

当用户移动菜单项时我想更改背景图像,如果DIV -

 <div class="hbg">
        <!--here I want to display image--> 
          </div>

我怎么能通过jQuery ???

来做到这一点

4 个答案:

答案 0 :(得分:2)

你的意思是跟随什么?

$('.smenu li').bind('mouseover', function(){
  $('.hbg').css('background-image', 'new image');
});

答案 1 :(得分:2)

使用jquery的hover函数

例如:

 $('.menuItem').hover( function(){ 
      $(this).css('background-image', 'image url'); 
   } );

答案 2 :(得分:2)

我假设您打算在src下使用图片的li

$('.smenu li').mouseover( function(){
    var src = $(this).find('img').attr('src');
    $('.hbg').css('background-image', 'url(' + src + ')');
});

答案 3 :(得分:1)

我管理了以下内容:

<!DOCTYPE html> 
<title>UL class change on li hover</title> 

<style> 
#list {
background-color:#dda;
width:10em;
height:20em;
}

#list li {
padding:2em .5em;
}
</style>  

<ul id="list">
<li class="one">Test 1</li>
<li class="two">Test 2</li>
<li class="three">Test 3</li>
</ul>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 

<script>
$(document).ready(function () {
    var defaultColor = $("#list").css("background-color");

    $("#list .one").hover(
        function () { 
            $(this).parent().css({backgroundColor: "red"});
        },
        function () { 
            $(this).parent().css({backgroundColor: defaultColor});
        }
    );

    $("#list .two").hover(
        function () { 
            $(this).parent().css({backgroundColor: "green"});
        },
        function () { 
            $(this).parent().css({backgroundColor: defaultColor});
        }
    );

    $("#list .three").hover(
        function () { 
            $(this).parent().css({backgroundColor: "blue"});
        },
        function () { 
            $(this).parent().css({backgroundColor: defaultColor});
        }
    );
});
</script> 

重构这个很好,但只需用“图像”替换“颜色”,它应该是一个有效的解决方案。