多个.hide监听器上的jQuery IE7错误

时间:2010-03-09 22:55:27

标签: jquery gridview hide show

我正在构建一个产品页面,可以在这里看到(http://n9nemedia.net/v2/products/),并且以一种独特的方式显示脚本(不隐藏多个div,只有一个监听器工作完美 - 可以在这里看到http://www.supercentral.net/downloads点击Zombie Map Pack下的“阅读列表”,效果很好。

我的问题是,我可以做些什么(http://www.n9nemedia.net/v2/products/)在IE7中工作?

代码示例:

jQ(".prod-details-web").hide();
jQ(".prod-details-dev").hide();
jQ(".prod-details-grow").hide();
jQ(".prod-details-brand").hide();
jQ(".prod-details-3g").hide();  
jQ(".prod-expand-web").click(function(event) {
    jQ(".prod-details-dev").slideUp("fast");
    jQ(".prod-details-grow").slideUp("fast");
    jQ(".prod-details-brand").slideUp("fast");
    jQ(".prod-details-3g").slideUp("fast");                               
    jQ(this).parents(".prodcontent")
        .find(".prod-details-web").slideDown("slow");
});
jQ(".prod-collapse-web").click(function(event) {
    jQ(this).parents(".prod-details-web").slideUp("fast");
    event.preventDefault();
    jQ(".prod-details-web:hidden").show();
});

目标是每次点击只显示一种产品。不要在点击时取消隐藏所有div。该脚本在IE7的所有浏览器中都运行良好。在我亲自检查的Chrome,Firefox,Safari和IE8 *中工作。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

更改:

JQ(本)。家长( “prodcontent”)         .find( “PROD-细节的web ”)了slideDown(“ 慢”)。 });

到:

JQ(本)。家长( “prodcontent”)         .find( “PROD-细节-网 ”)显示(“ 慢”)。 });

现在它在IE7中完美运行。

这很有效,直到我清除缓存并在Chrome和Safari中找到了一个时髦的行为。如果您希望在浏览器中保持相同的动画流畅

,则需要有条件语句
    /*@cc_on @*/
    /*@if (@_jscript_version >= 5)
    .find(".prod-details-web").show("slow");
    @else @*/
    .find(".prod-details-web").slideDown("slow");
    /*@end @*/