JQuery在IE中淡出工作,而不是Chrome

时间:2009-10-08 04:10:52

标签: c# jquery json

我已经查看了堆栈溢出并且无法真正找到答案。我有以下代码淡出一个项目,向服务器发送信息,并在收到它时将其淡入。它在IE中运行良好。在chrome中不起作用。数据在服务器上调用,但实际的淡入淡出效果不起作用。

function getChannelIndexFilter(channelName, filterType) {
        $("#videoList").fadeOut("fast", function() {
            $.get("/Home/GetChannelIndexFilter", 
                { channel: channelName, type: filterType },
                function(items, status) {
                    $("#videoList").fadeIn("fast");
                },
            "json")
        });
    }

现在我真的很困惑......即使是简单的

$(document).ready(function() {
    $(".videoImage").click(function() {
        $("#episodeList").fadeOut();
    });
});

不淡出。如果我将fadeOut()更改为hide()则可以正常工作。

3 个答案:

答案 0 :(得分:0)

不确定是否会这样做但是值得一试 - 尝试在"json")之后添加分号

答案 1 :(得分:0)

Chrome是否可能运行得太快,无法查看正在发生的事情。我会尝试将淡出时间提高到5秒,看看会发生什么。还可以考虑使用fadeOut而不使用其他代码来查看Chrome在此#videolist上的行为方式。我怀疑Chrome无法弄清楚#videolist应该被褪色的东西,无论是它还是它都不会褪色。

我使用了淡入/淡出效果,它们在Chrome上运行良好。您的代码看起来很完美,在此特定样本中您不需要任何分号。我个人不会在不需要它们的地方使用它们,因为缩小程序无法删除它们。

最后,我假设您正在运行最新版本的jQuery和Chrome。

答案 2 :(得分:0)

在淡入淡出之前保存将淡化为JavaScript变量的元素的html,然后进行实际淡化,然后将原始html从变量返回到已淡化的元素中。如果该元素包含一些将在页面加载中操作的dom元素,则最后调用页面加载函数。

var sHtml = $(".divFade").html();
$(".divFade").fadeIn();
$(".divFade").html() = shtml;
PageLoad();