我想在我的下拉列表中添加一个
CSS3效果. (就像Instagram.com上的“我的个人资料”一样).
我使用Animate.css的CSS3效果.
我试过这个,但不行.
HTML
<a href="#" data-dropdown="dropdownalerts" data-options="is_hover:true"><%=fa_icon "bell"%></a> <ul id="dropdownalerts" class="f-dropdown text-left animated bounceInDown" data-dropdown-content> <li><%=link_to "Facebook","#"%></li> <li><%=link_to "Email","#" %></li> </ul>
JS
$(document).ready(function(){ $('a').hover(function(){ $("ul").addClass('animated bounceInDown'); }); });
您可以在Zapping.io上找到一个实时版本
解决方法
我以一个例子来工作.我使用了您提供的HTML,然后下载了bounceInDown动画,并在下面的示例中将其用于CSS.
jsFiddle example here – 悬停方式
jQuery的
$(document).ready(function(){ $('a').hover(function() { $("ul").addClass('animated bounceInDown'); },function(){ $("ul").removeClass('animated bounceInDown'); }); });
jsFiddle example – 悬停方式延时.
$(document).ready(function(){ $('a').hover(function() { $("ul").addClass('animated bounceInDown'); },function(){setTimeout(function(){ $("ul").removeClass('animated bounceInDown'); },750);}); });
这些例子假设你想要在悬停上触发动画.如果您希望在点击时触发,请改用:
jsFiddle example点击方法 – 查看下面的替代非JS方法.
$(document).ready(function(){ $('a').click(function() { $("ul").toggleClass('animated bounceInDown'); }); });
替代方法 – 没有JS / jQuery
如果您不想使用JavaScript / jQuery,可以使用CSS中的复选框.
这实际上是在以下之间切换:选中,从而激活动画.
jsFiddle example – 它适用于所有当前的浏览器.
HTML
<label id="click" for="dropdown">Click here</label> <input style="display:none" type="checkBox" id="dropdown"> <ul id="dropdownalerts" class="f-dropdown text-left" data-dropdown-content> <li>Facebook</li> <li>Email</li> </ul>
CSS – (只是其中的一部分)请参阅上面的示例以获取完整的CSS.
input[type=checkBox]:checked ~ #dropdownalerts { display:inline-block; -webkit-animation: bounceInDown 1s both; -moz-animation: bounceInDown 1s both; -o-animation: bounceInDown 1s both; animation: bounceInDown 1s both; }