2013-01-16 40 views
1

因此,我已将onmouseover应用于Angelina Jolie图像,以便更改上面显示“某些示例文本”元素的文本。我怎样才能让它恢复原来的文字,内容是“你的每日剂量的Contrabang”。预先感谢您的帮助。该的jsfiddle在这里http://jsfiddle.net/cntra/VSCXy/9/Onmouseover恢复为原始文本

HTML:

<div class="columa">  
<div id="text-display"> 
<span id="targetElm">Your Daily Dose of Contrabang</span> 
</div> 

<div class="morphing-tinting"> 
<a href="#" class="changeTextClass" rel="targetElm|some sample text"> 
<span class="image-wrap" style="position:relative; left: 0px; top:0; display:inline-block;   
background:url 
(http://www.howmuchdotheyweigh.com/wp-content/uploads/2011/02/angelina-jolie.jpg) 
no-repeat center center; width: 250px; height: 250px;"> 
</span></a> 

CSS:

#text-display 
{top:; position: relative; 
display:inline-block;padding:5px 10px; 
font-family: sans-serif; font-weight:bold; font-size:50px; 
color: white; text-align: center; line-height: 1.2em;margin:0px; 
background-color:#E94F78;} 


.morphing-tinting .image-wrap { 
position: absolute; 

-webkit-transition: 1s; 
-moz-transition: 1s; 
transition: 1s; 

-webkit-border-radius: 30em; 
-moz-border-radius: 30em; 
border-radius: 30em; 
} 

.morphing-tinting .image-wrap:hover{ 
-webkit-border-radius: 30em; 
-moz-border-radius: 30em; 
border-radius: 30em; 
} 

JS

$('.changeTextClass').hover(function(){ 
    var elmData = $(this).attr('rel').split('|'); 
    $('#'+elmData[0]).text(elmData[1]); 
}); 

    var elmData,origText; 
$('.changeTextClass').hover(function(){ 
    elmData = $(this).attr('rel').split('|'); 
    origText = $('#'+elmData[0]).text(); 
    $('#'+elmData[0]).text(elmData[1]); 
}, function(){ 
    $('#'+elmData[0]).text(origText); 
}); 

回答

1

您可以缓存原始文本并使用handlerOut回调将文本设置回原始。

.hover(handlerIn(eventObject), handlerOut(eventObject)) 

所以,在DOM准备好了,我这样做:

$(document).ready(function() 
{ 
    var originalText = $('#targetElm').text(); 

    $('.changeTextClass').hover(
    function() { 
     var elmData = $(this).attr('rel').split('|'); 
     $('#targetElm').text(elmData[1]); 
    }, 
    function() { 
     $('#targetElm').text(originalText); 
    } 
); 
}); 
1

你拨弄工作得很好,你有没有旧的悬停这正在破坏新的影响。请参阅:http://jsfiddle.net/VSCXy/10/(注意我删除了安吉丽娜,因为她是NSFW)

更新JS部分:

var elmData,origText; 
$('.changeTextClass').hover(function(){ 
    elmData = $(this).attr('rel').split('|'); 
    origText = $('#'+elmData[0]).text(); 
    $('#'+elmData[0]).text(elmData[1]); 
}, function(){ 
    $('#'+elmData[0]).text(origText); 
}); 
+0

大声笑,我明白了,多谢了这小子。 –

0

更改脚本如下:

var elmData,origText; 
$('.changeTextClass').hover(function(){ 
    elmData = $(this).attr('rel').split('|'); 
    origText = $('#targetElm').text(); 
    $('#'+elmData[0]).text(elmData[1]); 
}, function(){ 
    $('#'+elmData[0]).text(origText); 
}); 

删除第一个悬停功能和第二个改变origText的内容以及所有想要的作品。