zoukankan      html  css  js  c++  java
  • 使用Accordion

    本章介绍AJAX Control Toolkit中的Accordion组件的使用方法。Accordion翻译成中文是可折叠的意思,如果你想在一个页面里显示多篇文章,但又不想分页或 把页面撑得太长,那么你就应该用Accordion了。它能折叠或展开文章区域,维持页面美观的同时还能增强用户体验。

    第一步:设置Accordion组件

    在这个例子里我们只需要一个Accordion组件、N个AccordionPane组件以及N篇演示文章。首先我们先拖进一个Accordion组件,并作相关设置。具体设置如下。

    <ajaxToolkit:Accordion ID="Accordion1" runat="server"
                ContentCssClass="Content"
                HeaderCssClass="Header"
                FadeTransitions="true"
                FramesPerSecond="40"
                TransitionDuration="250">
                </ajaxToolkit:Accordion>

    ContentCssClass是指内容区域的样式名,而HeaderCssClass是指头部区域的样式名,具体的样式大家自行定义,稍后我也会给出我自己用的样式。FadeTransitions是指伸缩内容区域时是否播放渐变效果,FramesPerSecond是指伸缩内容区域的动画桢数,桢数越大动画就越流畅。TransitionDuration是指伸缩区域所需要的时间,单位是毫秒,时间越大,伸缩区域所需要的时间就越长。

    最后附上我自己写的样式表:

      .Header
    {
        font-size:12px;
        color:#ffffff;
        background:#666666;
        font-weight:bold;
    }
     
    .Content
    {
        font-size:12px;
        color:#003366;
        background:#ffffcc;
    }

    第二步:添加AccordionPane

    设置好Accordion之后我们可以添加内容了。注意所有内容必须在<Panes>标签内,每篇内容对应一个AccordionPane组件。本例子一共有四篇文章,所以我用了四个AccordionPane组件,所有代码如下:

    <ajaxToolkit:Accordion ID="Accordion1" runat="server" ContentCssClass="Content" HeaderCssClass="Header" FadeTransitions="false" FramesPerSecond="40" TransitionDuration="250">
                <Panes>
                    <ajaxToolkit:AccordionPane ID="AccordionPane1" runat="server">
                    <Header>
                    第一章
                    </Header>
                    <Content>
                    这里是第一章的故事:在很久很久以前,从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢?
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    </Content>
                    </ajaxToolkit:AccordionPane>
                     <ajaxToolkit:AccordionPane ID="AccordionPane2" runat="server">
                    <Header>
                    第二章
                    </Header>
                    <Content>
                     这里是第二章的故事:在很久很久以前,从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢?
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    </Content>
                    </ajaxToolkit:AccordionPane>
                     <ajaxToolkit:AccordionPane ID="AccordionPane3" runat="server">
                    <Header>
                    第三章
                    </Header>
                    <Content>
                     这里是第三章的故事:在很久很久以前,从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢?
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    </Content>
                    </ajaxToolkit:AccordionPane>
                     <ajaxToolkit:AccordionPane ID="AccordionPane4" runat="server">
                    <Header>
                    第四章
                    </Header>
                    <Content>
                     这里是第四章的故事:在很久很久以前,从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢?
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    从前有座山,山上有个庙,庙里有个和尚在讲故事,讲什么呢……
                    </Content>
                    </ajaxToolkit:AccordionPane>
    </Panes>
    </ajaxToolkit:Accordion>

    注意:AccordionPane里的<Header><Content>标签内的内容是支持HTML和Javascript的。

    到了这里一切已经设置完毕,运行!效果如下图:

    网页第一次运行时只显示第一章的内容,当我们点击“第二章”后,第一章内容发生折叠,第二章内容同时展开。

    结束:

    本章介绍了Accordion的使用方法,它能折叠或拉伸网页中的特定区域,令你的页面排版更灵活,单个页面所显示的内容更丰富。同时结合CSS样式和Javascript,你能使它变得更美观更人性化。

  • 相关阅读:
    【React Native】某个页面禁用物理返回键
    【React Native】DeviceEventEmitter监听通知及带参数传值
    转载【React Native代码】手写验证码倒计时组件
    【React Native】 中设置 APP 名称、应用图标、为安卓添加启动图
    【React Native错误集】* What went wrong: Execution failed for task ':app:installDebug'.
    【React Native错误集】Import fails with "Failed to execute 'ImportScripts' on 'WorkerGlobalScope'"
    【React Native错误集】Android error “Could not get BatchedBridge, make sure your bundle is packaged properly” on start of app
    「React Native笔记」在React的 setState 中操作数组和对象的多种方法(合集)
    【React Native】Error: Attribute application@allowBackup value=(false) from AndroidManifest.xml
    坚果云如何使用二次验证码/谷歌身份验证器/两步验证/虚拟MFA?
  • 原文地址:https://www.cnblogs.com/homezzm/p/1610027.html
Copyright © 2011-2022 走看看