2011-03-13 30 views
1

我有一個充滿信息的div,在this blog,我用CSS設置了一個不透明度。我如何讓它「淡入」使用jQuery 90或100%懸停該div?如何淡入具有不透明度的div?

.infoHolder2 { 
position:absolute; 
color:#FFF; 
background:#9f9377; 
padding:15px; 
padding-top:23px; 
z-index:5; 
width:97.7%; 
bottom:8px; 
margin:-8px; 
opacity:0.2;filter:alpha(opacity=20) 
} 

<div class="infoHolder2"><div id="title">I'm {Title} and I like <span id="stuff"></span>. 
</div><img id="portrait" src="{PortraitURL-128}"><img id="portraitCover" 
src="http://static.tumblr.com/ux4v5bf/3Uolhxkyl/cover.png"> 
<div id="infoHolder">{Description}</div></div> 

回答

4

嘗試jquery fadeto()

這應該做的伎倆(淡入到500毫秒90%):

$(".infoHolder2").fadeTo(500, 0.9); 
+0

我忘了提及我想要懸停,並在懸停時淡入。 –

+0

然後,嘗試以下腳本: '$(「。infoHolder2」)。hover(function(){$(this).fadeTo(500,0.9);},function(){$(this).fadeTo (500,0.2);});' –

0

您可以使用fadeTo()

漸變至90%的不透明度,用這個...

$('.infoHolder2').hover(function() { 
    $(this).fadeTo(1000, 0.9); 
}, function() { 
    $(this).fadeTo(1000, 0); 
}); 

jsFiddle

+0

懸停,但感謝你的代碼工作沒有少。 –

+0

@Earl我更新了我的代碼以使用'hover()'。 – alex

0

使用jQueries fadeTo

用法 http://api.jquery.com/fadeTo/

fadeTo(duration, opacity) 

//90% Opacity 
$('.infoHolder2').fadeTo("slow", 0.90); 

//100% Opacity 
$('.infoHolder2').fadeTo("slow", 1); 

懸停

$('.infoHolder2').hover(
     function(){ 
      $(this).fadeTo('slow', 0.90); 
     },function(){ 
      $(this).fadeTo('slow', 0.50); 
     } 
); 

Live Demo

+0

我忘了提及我不想徘徊,它在徘徊時褪色。 –

+0

@伯爵拉爾森在懸停時更新了它。 – Loktar

0

我認爲以下應工作:

$('.infoHolder2').fadeTo(500,'1'); 

值得注意的在fade()方法參數的順序,持續時間爲第一,其次的價值期望的opacity。由於某種原因我總是當他們寫下來讓他們混淆起來。感謝@alex的評論。

你可以,另外,如果你想使用:

$('.infoHolder2').animate({'opacity':'1'},500); 

但是,除非你是動畫等特性,它成爲同樣的效果不那麼簡潔。

JS Fiddle demo to cover both options

參考文獻:


響應OP的要求編輯hover()

$('ul li').hover(
    function(){ 
     var which = $(this).index(); 
     if (which == 0){ 
      $(this).fadeTo(500,'1'); 
     } 
     else { 
      $(this).animate({'opacity':'1'},500); 
     } 
    }, 
    function(){ 
     $(this).fadeTo(500, 0.5); 
    } 
); 

JS Fiddle demo運行此。

+0

你應該交換這些爭論,我認爲:) – alex

+0

@alex:你是絕對正確的,謝謝!編輯於=) –

+0

對我來說,首先目標不透明將是第一個參數。我不知道jQuery是否從PHP獲得一些參數簽名建議? =} – alex

0

也CSS3不使用jQuery

.image { 

    position: relative; 
     overflow: hidden; 
    -webkit-transition: all 0.5s ease-out; 
    -moz-transition: all 0.5s ease-out; 
    transition: all 0.5s ease-out; 
     opacity:1; 
filter:alpha(opacity=100); 

} 
.image:hover { 

     opacity:0; 
filter:alpha(opacity=0); 
    } 
+0

哇,太棒了!我希望所有的瀏覽器都能很快支持。 CSS比雜亂的javascript更容易。 –

+0

當你正確的代碼 -webkit轉型:所有的0.5s緩解; -moz-transition:全部0.5s緩解;它主要支持瀏覽器safari,firefox,opera和Internet Explorer。 – john

相關問題