我有一个名为login.js的jQuery文件:
<script type='text/javascript'>
var login = function () {
$("a#register").click(function () {
$("form#login").hide();
$("form#signup").show();
});
$("a#login").click(function () {
$("form#login").show();
$("form#signup").hide();
});
}
</script>
使用以下HTML:
<script>
$(document).ready(function() {
login();
});
</script>
并在标题中得到了这个:
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="../scripts/login.js"></script>
jQuery代码不是这样工作的,如果我将它直接包含在HTML中,那么它的工作原理是什么呢?
答案 0 :(得分:1)
标题
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="scripts/login.js"></script>
Login.js
$(document).ready(function() {
$("a#register").click(function() {
$("form#login").hide();
$("form#signup").show();
});
$( "a#login" ).click(function() {
$("form#login").show();
$("form#signup").hide();
});
});
可能的修复:
<script>
标签../scripts/
更改为scripts/
答案 1 :(得分:0)
尝试将login.js移动到与您调用它的页面相同的位置(例如, web / index.php 和 web / login.js )。如果这样可行,那么您遇到的问题就是您从标题中指向的JS文件的位置。
我建议你总是使用简单的路由到CSS和JS文件(比如/ css和/ js),以避免使用“... / path / to / file.js。这样,你的代码就应该这么简单:
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="script/login.js"></script>
如果它适合你,你可以改进它,使用PHP变量指向服务器主页位置,从而使路径成为绝对路径,如下例所示:
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="<?php echo $_SERVER['HOME']; ?>/script/login.js"></script>
我希望这会有所帮助。