我知道这应该很简单,但我不知道出了什么问题。 我在左下角使用固定div来显示加载/微调div。
加载程序在显示时应从左向右滑动(最初设置为display:none;)。 在隐藏时,它应该从右向左滑动并消失。
CSS
#loading span {
float:left;
margin-top :1px;
margin-left :3px;
margin-right :3px;
line-height:16px;
font-size:12px;
font-family:"oswald";
}
#loading img {
float:left;
margin-top : 1px;
}
#loading {
display: none;
position: fixed;
z-index: 1000000;
left:0;
top:90% !important;
width:60px;
height:20px;
background: black;
color:white;
border: 1px solid #ddd;
}
HTML:
<button type="button" id="sh">Show!</button>
<button type="button" id="hd">Hide!</button>
<div id="loading"><span> loading </span>
<img class="loader" src=" http://i.stack.imgur.com/FhHRx.gif" width="16" height="16" />
</div>
的javascript
// Show loading
$('#sh').on('click', function () {
$("#loading")
.animate({
left: -160
}, {
duration: 'slow',
easing: 'easeOutBounce'
})
.animate({
left: 0
}, {
duration: 'slow',
easing: 'easeOutBounce'
})
.show();
});
答案 0 :(得分:1)
$('#sh').on('click', function () {
$("#loading").toggle('Bounce');
});
你也可以使用hide和show,就像那样:
$('#sh').on('click', function () {
$("#loading").show('Bounce');
});
答案 1 :(得分:0)
看起来您将隐藏代码和显示代码都放在show按钮的回调中。而不是
// Show loading
$('#sh').on('click', function () {
$("#loading")
.animate({
left: -160
}, {
duration: 'slow',
easing: 'easeOutBounce'
})
.animate({
left: 0
}, {
duration: 'slow',
easing: 'easeOutBounce'
}).show();
});
// Hide loading
$('#sh').on('click', function () {
});
你想要
// Show loading
$('#hd').on('click', function () {
$("#loading")
.animate({
left: -160
}, {
duration: 'slow',
easing: 'easeOutBounce'
})
});
// Hide loading
$('#sh').on('click', function () {
$("#loading")
.animate({
left: 0
}, {
duration: 'slow',
easing: 'easeOutBounce'
}).show();
});
但是,我建议您使用.toggle()函数,而不是direction: right
,因为它会简化您的代码和界面(您可能只需要一个按钮,而不是两个)。