jquery - 在网格/ ListView 之间切换时的淡入和淡出过渡

标签 jquery css

这是用于在网格和 ListView 之间切换以显示内容的 jQuery 脚本。如何在网格和 ListView 之间切换时通过添加一些像这样的字符串 .fadeOut(1000) 来提供淡入淡出过渡.fadeIn(1000).

这是脚本:

jQuery(document).ready(function () {
    var $box=jQuery(".post"),
        $bar=jQuery("a.bar_view");
    $dat=jQuery("a.dat_view");
    $dat.click(function () {
        $box.removeClass("bar");
        jQuery(this).addClass("active");
        $bar.removeClass("active");
        jQuery.cookie("dat_style", 0);
        return false
    });
    $bar.click(function () {
        $box.addClass("bar");
        jQuery(this).addClass("active");
        $dat.removeClass("active");
        jQuery.cookie("dat_style", 1);
        return false
    });
    if(jQuery.cookie("dat_style")==0) {
        $box.removeClass( "bar");
        $dat.addClass("active")
    } else {
        $box.addClass("bar");
        $bar.addClass("active")
    }
});

这是(网格/列表)HTML 源:

<div id="main-wrapper">
<div class="switch">
<div class="switch-right">
<a class="bar_view" href="#">Grid</a>
<a class="dat_view" href="#">List</a>
</div>
</div>
<div class="main section" id="main">
<div class="widget Blog" id="Blog1">

<div class="blog-posts hfeed">
<!--Content Start -->
<div class="post bar hentry">
Content
</div>
<div class="post bar hentry">
Content
</div>
<div class="post bar hentry">
Content
</div>
<div class="post bar hentry">
Content
</div>
<!--Content End -->
</div>

</div>
</div>
</div>

注意:我不想对 HTML 进行任何更改。谢谢:)

这是演示链接:http://bbelog-megagrid.blogspot.com

最佳答案

看一个例子。希望对您有所帮助。 :)

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<div id="list" style="width: 200px; height: 200px; color:#fff; background-color: #f00;display: none;">List View</div>
<div id="grid" style="width: 200px; height: 200px; color:#000;  background-color: #0f0;">Grid View</div>
<button id="check">View Grid</button>
<script>
$(document).ready(function(){
    $('#check').click(function(){
        if($('#list').is(':visible')){
            $('#list').fadeOut("fast");
            setTimeout(function(){
                $('#grid').fadeIn("slow");
                $('#check').text('View List');
            },200);
        }else{
            $('#grid').fadeOut("fast");
            setTimeout(function(){
                $('#list').fadeIn("slow");
                $('#check').text('View Grid');
            },200);
        }
    });
});
</script>

关于jquery - 在网格/ ListView 之间切换时的淡入和淡出过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24870721/

相关文章:

javascript - 正则表达式以最小化 CSS

javascript - 滚动时隐藏 Bootstrap 导航栏

javascript - 将 HTML5 Canvas (视频)元素分割成多个部分

javascript - 有没有一种方法可以将所有潜在参数保存在一个数组中?

Jquery滚动顶部元素不移动

jquery - 如何使每行中除第一列以外的列左对齐?

javascript - 随着鼠标位置的变化改变背景颜色

css - 将 SASS Interpolation 正确转换为 LESS

Javascript 粘性导航闪烁

jquery - 我如何决定媒体查询和CSS之间的优先级?