我查看了有关未捕获错误的所有类似帖子:$未定义且没有任何帮助。我有最新的jquery库,只是不明白为什么会出现这个错误。
$(function() {
// Checking for CSS 3D transformation support
$.support.css3d = supportsCSS3D();
var formContainer = $('#formContainer');
$('.flipLink').click(function(e){
// Flipping the forms
formContainer.toggleClass('flipped');
if(!$.support.css3d){
$('#login').toggle();
}
e.preventDefault();
});
formContainer.find('form').submit(function(e){
e.preventDefault();
});
function supportsCSS3D() {
var props = [
'perspectiveProperty', 'WebkitPerspective', 'MozPerspective'
], testDom = document.createElement('a');
for(var i=0; i<props.length; i++){
if(props[i] in testDom.style){
return true;
}
}
return false;
}
});
我在这里调用脚本为scripts.js
<head>
<script type="text/javascript" src="js/scripts.js"></script>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<link rel = "stylesheet" href= "css/styles.css">
</head>
我非常感谢获得知识,以了解为什么会出现这种情况以及任何提示。
答案 0 :(得分:3)
在
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/scripts.js"></script>
浏览器会在加载后立即评估<script>
标记内容。如果你把它放在第一位,浏览器会在解析后续脚本之前尝试运行它。因此,您的脚本的依赖性将不会得到满足,您将收到类似的错误。
答案 1 :(得分:3)
您应该在jquery脚本之后加载scripts.js:
<head>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/scripts.js"></script>
<link rel = "stylesheet" href= "css/styles.css">
</head>
答案 2 :(得分:0)
尝试在脚本上方移动jquery的脚本标记,以便定义$。