Jquery 使用淡入淡出更改视图模式(并设置cookie)
我需要为用户提供在Jquery 使用淡入淡出更改视图模式(并设置cookie),jquery,cookies,fadein,fadeout,setcookie,Jquery,Cookies,Fadein,Fadeout,Setcookie,我需要为用户提供在列表视图、网格视图和全视图之间选择视图模式的选项。基本结构很简单,如下所示: <ul> <li><a href="#">List Toggle</a></li> <li><a href="#">Grid Toggle</a></li> <li><a href="#">Full Toggle</a></l
列表视图
、网格视图
和全视图
之间选择视图模式的选项。基本结构很简单,如下所示:
<ul>
<li><a href="#">List Toggle</a></li>
<li><a href="#">Grid Toggle</a></li>
<li><a href="#">Full Toggle</a></li>
</ul>
<div id="wrap">
<div id="list-view">
<div class="line">lorem line</div>
<div class="line">lorem line</div>
<div class="line">lorem line</div>
</div>
<div id="grid-view">
<div class="box">lorem box</div>
<div class="box">lorem box</div>
<div class="box">lorem box</div>
</div>
<div id="full-view">
<div class="full">full lorem</div>
<div class="full">full lorem</div>
<div class="full">full lorem</div>
</div>
</div>
洛雷姆线
洛雷姆线
洛雷姆线
洛雷姆盒子
洛雷姆盒子
洛雷姆盒子
全彩
全彩
全彩
下面是一个jsfiddle
我从列表视图开始设置为可见,其他设置为隐藏:
这是我想实施的一个,但有3个选项需要它。。
基本上,如果单击某个视图模式,当前视图模式将淡出,选定的视图模式将淡入
如果可能的话,我还想添加一个cookie来记住用户的偏好,但我不知道怎么做。我对jQuery很陌生,希望我的问题不是太基本。实际上没有什么特别的,你只有三个选项卡(列表、网格、完整)。
首先,我建议您遵循以下标记:
<ul class="tabs js-view-mode">
<li><a href="#list">List</a></li>
<li><a href="#grid">Grid</a></li>
<li><a href="#full">Full</a></li>
</ul>
<section id="viewMode">
<div id="list">here is list mode content</div>
<div id="grid">here is grid mode content</div>
<div id="full">here is full mode content</div>
</section>
你可以看到一个现场测试
编辑:(添加活动类别+延迟淡入/淡出+单击活动项目返回)实际上没有什么特别的,您只有三个选项卡(列表、网格、完整)。
首先,我建议您遵循以下标记:
<ul class="tabs js-view-mode">
<li><a href="#list">List</a></li>
<li><a href="#grid">Grid</a></li>
<li><a href="#full">Full</a></li>
</ul>
<section id="viewMode">
<div id="list">here is list mode content</div>
<div id="grid">here is grid mode content</div>
<div id="full">here is full mode content</div>
</section>
你可以看到一个现场测试
编辑:(添加活动clas+延迟fadeIn/Out+单击活动项返回)那么您的问题“如何根据用户的偏好使用cookie?”,或者“有人能从头开始编写jQuery代码吗?”到目前为止您尝试了什么?你看过.fadeIn()
和.fadeOut()
吗?我确实使用过类似的方法,但你只能选择两种查看模式。。。我想要cookie首选项选项,但可能这应该是一个不同的问题抱歉。这里是另一个问题:那么您的问题“如何将cookie用于用户的首选项?”,或者“有人可以从头开始编写jQuery代码吗?”到目前为止您尝试了什么?你看过.fadeIn()
和.fadeOut()
吗?我确实使用过类似的方法,但你只能选择两种查看模式。。。我想选择cookie preferences选项,但也许这应该是一个不同的问题对不起。这里是另一个:谢谢Stefanz!这看起来很棒,而且非常简单。是否有一个原因,当您切换视图模式时,内容会跳起来而不是平滑地淡入淡出?是的。问题在于css。必须将#viewMode position:relative;其子代地位:绝对;顺便说一句,如果你认为是soThanks,请给出正确的答案。问题是我的网站反应灵敏/流动性强,添加了一个位置:相对和绝对会把它甩了。有可能用另一种方法吗?目前我只有一个想法:用wrap.children().fadeOut()替换$(type).fadeIn().sides().fadeOut()$(类型).delay(500).fadeIn();无论如何,延迟参数取决于内容的长度。任何低于500的值都会给您带来一些问题。尝试一下,看看发生了什么。不确定你是否会得到这个评论Stefanz,但我试着这样做,如果你点击活动视图模式的锚,什么都不会发生。现在,它将淡出并重新进入..谢谢Stefanz!这看起来很棒,而且非常简单。是否有一个原因,当您切换视图模式时,内容会跳起来而不是平滑地淡入淡出?是的。问题在于css。必须将#viewMode position:relative;其子代地位:绝对;顺便说一句,如果你认为是soThanks,请给出正确的答案。问题是我的网站反应灵敏/流动性强,添加了一个位置:相对和绝对会把它甩了。有可能用另一种方法吗?目前我只有一个想法:用wrap.children().fadeOut()替换$(type).fadeIn().sides().fadeOut()$(类型).delay(500).fadeIn();无论如何,延迟参数取决于内容的长度。任何低于500的值都会给您带来一些问题。尝试一下,看看发生了什么。不确定你是否会得到这个评论Stefanz,但我试着这样做,如果你点击活动视图模式的锚,什么都不会发生。现在,它将淡出并重新进入。。