2011-08-18 90 views
2

我有一系列的文字链接,当它们翻转时,会导致特定的图像链接淡入;该图像不会褪色/更改为不同的图像,直到不同的文本链接被翻转。悬停在文字上以改变图像的淡入淡出

我没有发现这样做,虽然没有褪色影响图像的变化时,一些基本的脚本:

<script language="javascript"> 
function roll(img_name1, img_src1) 
{ 
document[img_name1].src = img_src1; 
} 
</script> 

<ul> 
<li><a href="1.htm" onMouseOver="roll('poster', '1.png')">111</a> 
<li><a href="2.htm" onMouseOver="roll('poster', '2.png')">222</a> 
<li><a href="3.htm" onMouseOver="roll('poster', '2.png')">333</a> 
</ul> 

<br><br><br><br> 

<p align="center"><img src="1.png" name="poster"></p> 

一个很好的例子是http://sharifabraham.com/projects/,我在一个类似的帖子发现:hover on text link to change image。我试图编辑和使用上述两个链接中的代码,但无济于事。任何有关做什么的洞察力非常感谢。

+0

这是什么问题?另外jQuery在哪里? – PeeHaa

回答

3

我已经放弃了内联JS代码,因为它不是首选方式。

我已将数据属性添加到包含要加载的图像的li

$(document).ready(function() { 
    $('ul.image-switch li').mouseover(function() { 
    var image_src = $(this).data('image'); 
    var img = $('.image-container img'); 
    if (img.attr('src') != image_src) { // only do the fade if other image is selected 
     img.fadeOut('slow', function() { // fadeout the current image 
     img.attr('src', img).fadeIn(); // load and fadein new image 
     }); 
    } 
    }); 
}); 

<ul class="image-switch"> 
    <li><a href="1.htm" data-image="1.png">111</a> 
    <li><a href="2.htm" data-image="2.png">222</a> 
    <li><a href="3.htm" data-image="2.png">333</a> 
</ul> 

<br><br><br><br> 

<p align="center" class="image-container"><img src="1.png" name="poster"></p> 

EDIT

对不起制成的类型。

DEMO:http://jsfiddle.net/yVcV3/1/

EDIT 2

http://jsfiddle.net/yVcV3/2/

+0

感谢您的帮助。但是,上面的代码似乎并不适用于我。原始图像显示出来,但是鼠标悬停在文本上没有任何反应。 – Yada

+0

@Yada:错字。看看我更新的答案。 – PeeHaa

+0

它的工作原理。有点。将鼠标悬停在任何链接上只是淡入淡出“图像容器”中指定的图像。 – Yada