2013-01-13 70 views
10

我想淡入div,將它保持在屏幕上幾秒鐘然後淡出。問題是,只要我期望它不會停留在屏幕上,即使將延遲設置爲約10秒,它也只是簡單地停留在屏幕上。我已經閱讀了很多帖子,並嘗試了很多東西,比如settimeout,但我無法快速地進入。JQuery淡入淡出延遲淡出

這裏是我的腳本:

<script type="text/javascript"> 
    function pageLoad() { 
    $("[id*=lnkSelect]").live("click", function() { 
    var price = $("#price").html($(".prodprice", $(this).closest('tr').prev().children ('td.prodpricelabel')).html()); 
    var code = $("#code").html($(".prodcode", $(this).closest('tr').prev().prev().children ('td.prodcodelabel')).html()); 
    //Build the new HTML 
    $(code).prepend("<br/>Item: "); 
    $(code).append("<br/>Has been<br/>added to your cart.<br/>Price: "); 
    $(".tooltipleft").html(code); //Set the new HTML 
    $(".tooltipleft").append(price); 
    $(".tooltipleft").fadeIn('slow').delay(5000).fadeOut('slow'); 
    }); 
    }; 
    </script> 

所以我正從HTML中的產品代碼和價格,修改div中的HTML然後衰落這是項目已被添加到一個通知購物車。

這是我想淡出在div:

<div class="tooltipleft" id="tooltip"> 
    <span id="code"></span><span id="price"></span> 
    </div> 

,並在網格中的按鈕:

<asp:ImageButton ID="lnkSelect" runat="server" ImageUrl="~/Buttons/add_to_cart.png" 
    AlternateText="Add To Cart" CommandArgument='<%# Eval("ProductID") %>' CommandName="Add" 
    ImageAlign="Right" /> 

感謝任何幫助或意見。

歡呼 CM

+0

如預期這應該工作。你可以張貼小提琴它不工作? –

+0

按預期工作:http://jsfiddle.net/265u3/ –

+0

點擊這個網頁上的添加到購物車按鈕http://www.t2tuk.co.uk/Items.aspx?Category=4看看我的意思 –

回答

12

使用的顯示和隱藏,而不是淡入淡出,並要看看它是否工作。如果它不起作用,那麼你的問題就在別的地方。 正如你看到這個工作example$('#foo').fadeIn().delay(2000).fadeOut(); 是一個正確的代碼行。

$('#tooltipleft').show(0).delay(5000).hide(0); 
+1

'show(0)'不會執行動畫。 'show('slow')'會執行不同於預期的動畫。 –

+0

這個問題的代碼沒有問題:http://jsfiddle.net/265u3/ –

+0

我只是累這個$('。tooltipleft')。show(0).delay(5000).hide(0);它的確定,但仍然不會像5秒那樣停留在屏幕上5秒,所以這就是爲什麼這應該是什麼原因? –

16

做這樣的事情:http://jsfiddle.net/LJsNG/1/

$(function() { 
    $('.tooltipleft').fadeIn('slow', function() { 
    $(this).delay(5000).fadeOut('slow'); 
    }); 
}); 
+0

提問者代碼的這部分沒有問題:http://jsfiddle.net/265u3/ –

+0

是的。該淡出不需要延遲5秒,我的是 – Chanckjh

+0

看到我的小提琴。該淡出確實需要延遲 –