我正在用phonegap创建一个应用程序,我正在验证使用jquery的表单客户端。如果没有连接,任何错误都会下降并像'snapchat'一样'覆盖'顶部的状态栏。不是第一个元素的第二个动画的调用promise函数?
为此,我在调用错误时隐藏状态栏,错误向下滑动并显示3秒钟,然后向上滑动。我想使用promise函数来等待直到错误再次出现之前再次显示状态栏,但我可以管理的所有内容都隐藏状态栏,并在错误消失后直接显示状态栏。
代码(J-查询):
function check_password() {
var password_length = $("#password_box").val().length;
if (password_length < 5) {
StatusBar.hide();
$("#error_password").html("Password must be greater than 5 characters");
$("#error_password").slideDown();
$("#password_box").addClass('red_border');
$(function() {
setTimeout(function() {
$("#error_password").slideUp('fast')
}, 3000);
});
error_password = true;
} else{
$("#error_password").hide();
}
}
的CSS:
.error {
position: fixed;
color: white;
background-color:#a50d2e;
top:0;
left: 0;
width: 100%;
height: 3%;
text-align: center;
padding-top: 1%;
}
为什么你不只是有一个叫做showError的var,默认是true。然后在你的函数开始时,如果(!showError)返回; showError = false;然后在你上一页之后,设置showError = true; – Keith
'slideDown'和'slideUp'都有回调,并且都返回延迟,如果您向我们展示错误滑落后显示此状态栏的位置,也许我们可以帮助您 – adeneo
我会将这些框的CSS代码在代码中。 验证的工作方式是默认隐藏的,直到有人输入某个内容并将其'重新输入到输入框中,然后检查它是否有效。如果不是,则显示错误消息 –