将此悬停效果更改为淡入淡出?

时间:2013-02-20 13:28:33

标签: javascript html hover

我有这个脚本可以更改onmouseover / onmouseout上的图像源。我现在添加了一些新元素,我想做同样的事情,但也会淡化,而不是立即更改图像源。有人可以给我一个提示,甚至可能更改我的代码?我会很感激的!

使用Javascript:

    d004on = new Image(100, 100);
    d004on.src = "images/catalog/dus004_h.png";

    d004off = new Image(100, 100);
    d004off.src = "images/catalog/dus004.png";

}

function change(imgName) {
    if (document.images) {
        imgOn = eval(imgName + "on.src");
        document[imgName].src = imgOn;
    }
}

function changeback(imgName) {
    if (document.images) {
        imgOff = eval(imgName + "off.src");
        document[imgName].src = imgOff;
    }
}

HTML:

<img src="images/catalog/dus004.png" alt="dus004" onMouseover="change('d004')" onMouseout="changeback('d004')"/>

2 个答案:

答案 0 :(得分:0)

在jquery中非常容易

HTML

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<span>Click here...</span>
<div id="one"></div>
<div id="two"></div>
<div id="three"></div>
</body>
</html>

CSS

span { color:red; cursor:pointer; }
div { margin:3px; width:80px; display:none;
height:80px; float:left; }
div#one { background:#f00; }
div#two { background:#0f0; }
div#three { background:#00f; }

Jquery的

   <script src="http://code.jquery.com/jquery-latest.js"></script>

   $(document.body).mouseenter(function () {
   $("div:hidden:first").fadeIn("slow");
   });

答案 1 :(得分:-1)

首先摆脱这种邪恶的eval事物;) 第二个jQuery有一些不错的动画功能......你是否允许使用jQuery? http://api.jquery.com/fadeIn/

这样的东西? http://jsbin.com/ewijam/1/edit

哦,并且通过wqay,谢谢你不喜欢试图帮助的人^^