我有一个基本的登录页面,其中包含一些样式,您将在示例中看到。最后,有一个jQuery脚本可以在加载下一页时动画1500ms。
我遇到了一个奇怪的错误。 50%的时间,它会动画并加载下一页 - 但剩下的大约50%,它只是路由到/static/jquery.min.js文件并打开它浏览器(具有路径的给定URL)。我不是jQuery鲨鱼。是什么给了什么?
示例代码,一个login.html文件:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src='static/jquery.min.js'></script>
<link rel="shortcut icon" type="image/png" href="static/images/favicon.png"/>
<link rel="shortcut icon" type="image/png" href="static/images/bg.jpg"/>
<meta charset="UTF-8">
<title>Title!</title>
<style>
// Lots of css for the login form
</style>
</head>
<body>
<div class="login">
<header class="login-header"><span class="text"><h4>Title!</h4></span><span class="loader"></span></header>
<form class="login-form" id="log-inform" action="/loginp" method="post">
<label><input class="login-input" type="text" name="username"/><h3>user</h3></label>
<label><input class="login-input" type="password" name="password"/><h3>password</h3></label>
<button class="login-btn" type="submit">login</button>
</form>
</div>
<script>
// jQuery function for animation after successful login
$('.login-input').on('focus', function() {
$('.login').addClass('focused');
});
function doOnSubmit(e) {
e.preventDefault();
$('.login').removeClass('focused').addClass('loading');
setTimeout(function(){
$('.login-form').submit();
},1500); // time in ms to do animation whilst loading the next page
$('.login').unbind('submit', doOnSubmit);
}
$('.login').on('submit', doOnSubmit);
</script>
</body>
</html>
如上所述 - 大约一半的时间完全按照意图行事。但为什么它会在一半时间内重定向到https://localhost:port/static/jquery.min.js?它只是在浏览器上打开它。
编辑:我想我已经缩小了一点。第一次,它打开jquery.min.js - 第二次,我可以登录。所以它必须与加载jquery.min.js相关?
第二次编辑:可以关闭。它与此代码无关,而是与从Java后端加载文件的权限相关。遗憾