2

我使用 jQuery 背景拉伸器,其中背景设置为图像,id="bg" 紧跟在正文之后。但是当有人用class=selector和alt=pathToImage悬停一个div时,我想更改背景图像。我知道 alt 不是最好在 div 中使用,但我需要找到一个“容器”来存储路径。

背景拉伸器完全可以,但是当我悬停某些东西时,它会将背景图像设置为 display="none"。我真的希望有人能帮助我。

代码是:

$(window).load(function(){
$('.selector').hover(function() {
    var img = document.createElement('img');
    img.src = $(this).attr('alt');
    img.onload = function() {
        $('#bg').fadeOut(function() {
            $(this).setAttribute('src', img.src).fadeIn();
        }); }; return false; }); });

先感谢您 :)

编辑!抱歉花了这么长时间,但让 html 阅读起来不那么痛苦:http: //jsfiddle.net/gaFfD/ 由于某些奇怪的原因,悬停效果在 jsfiddle 中不起作用。

4

1 回答 1

0

更新

试试这个小提琴:http: //jsfiddle.net/gaFfD/14/

应该

$(this).attr('src', img.src).fadeIn()

代替

$(this).setAttribute('src', img.src).fadeIn();

我用

jQuery(document).ready(function () {

代替

$(window).load(function() {

文档就绪和窗口加载之间的区别: window.onload 与 $(document).ready()

于 2012-06-06T08:11:32.940 回答