我想通过点击它的子锚标签来切换div的bottom
属性:
<div class="nav" :class="{ 'full-width': isFullWidth }">
<a class="toggle-button" @click="toggleNav"><i class="fa fa-angle-down"></i></a>
</div>
$('.toggle-button').click(function () {
$(this).parent().animate({ bottom: 0 }, 200)
}, function () {
$(this).parent().animate({ bottom: -30 }, 200)
})
现在,我必须再次点击bottom
属性进行更改,之后如果再次点击则没有任何反应。
我做错了什么?
答案 0 :(得分:2)
由于click()
事件处理程序只接受单个函数,因此您的逻辑存在缺陷。相反,您应该包含一个处理程序,并根据其当前值切换bottom
属性。试试这个:
$('.toggle-button').click(function () {
var bottom = parseInt($(this).css('bottom'), 10) == 0 ? -30 : 0;
$(this).parent().animate({ bottom: bottom }, 200)
});