JQuery fadeIn延迟淡出
我试着淡入一个div,在屏幕上保持几秒钟,然后淡出。问题是它并没有像我预期的那样长时间地停留在屏幕上,即使将延迟设置为10秒左右,它也只是短暂地停留在屏幕上。我读过很多帖子,也尝试过很多东西,比如settimeout,但我不会走得太快 这是我的剧本:JQuery fadeIn延迟淡出,jquery,Jquery,我试着淡入一个div,在屏幕上保持几秒钟,然后淡出。问题是它并没有像我预期的那样长时间地停留在屏幕上,即使将延迟设置为10秒左右,它也只是短暂地停留在屏幕上。我读过很多帖子,也尝试过很多东西,比如settimeout,但我不会走得太快 这是我的剧本: <script type="text/javascript"> function pageLoad() { $("[id*=lnkSelect]").live("click", function () { var
<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>
函数pageLoad(){
$(“[id*=lnkSelect]”。live(“单击”,函数(){
var price=$(“#price”).html($(“.prodprice”,$(this).closest('tr').prev().children('td.prodpricelab')).html());
var code=$(“#code”).html($(“.prodcode”,$(this).closest('tr').prev().prev().children('td.prodcodelabel')).html());
//构建新的HTML
$(代码).prepend(
项:);
$(代码).append(
已添加到您的购物车中。
价格:);
$(“.tooltipleft”).html(代码);//设置新的html
$(“.tooltipleft”).append(价格);
$(“.tooltipleft”).fadeIn('slow')。delay(5000)。fadeOut('slow');
});
};
因此,我从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" />
使用show and hide(显示和隐藏)而不是fadeIn和fadeOut(淡出)来查看它是否有效。如果它不起作用,那么你的问题就出在别的地方了。 正如您看到的那样,
$('#foo').fadeIn().delay(2000).fadeOut()正在工作;
是正确的代码行
$('#tooltipleft').show(0).delay(5000).hide(0);
这样做:
show(0)
将不执行动画<代码>显示('slow')将执行与预期不同的动画。询问者代码的这部分没有问题:我只是厌倦了这个$('.tooltipleft')。显示(0)。延迟(5000)。隐藏(0);它还可以,但仍然不会像2一样在屏幕上停留5秒,那么这是什么原因呢?这是我的网页,上面的代码当前正在使用$('.tooltipleft')。显示(0)。延迟(5000)。隐藏(0);您没有看到淡出动画,因为您正在刷新页面。已提交表单并加载location.aspx。这应能正常工作。你能在不起作用的地方贴一把小提琴吗?按预期效果:点击此网页上的“添加到购物车”按钮,查看我的意思询问者代码的这一部分没有问题:是的,有。淡出不需要5秒的延迟,我的会看到我的小提琴。衰减确实需要延迟
$(function () {
$('.tooltipleft').fadeIn('slow', function () {
$(this).delay(5000).fadeOut('slow');
});
});