我是一个bonifide jQuery新手,我有一些拼凑在一起的jquery代码,但是当页面加载时我一直收到错误。问题是我不确定我是否已正确关闭所有花括号和括号,并且真的很欣赏另一组眼睛:
$(document).ready(function() {
$('#slideshow').cycle({
fx: 'scrollLeft',
timeout: 8000
});
});
$('#freeQuote form')
.validate({
submitHandler: function(form) {
$(form).ajaxSubmit({
success: function() {
var Image = $('<img />').attr({src:'_images/free-quote-confirm.png', width:231, height:267, alt:"Success"});
$('#freeQuote form').hide();
$('#freeQuote').append(Image)
}
});
}
});
$('#news-signup form')
.validate({
submitHandler: function(form) {
$(form).ajaxSubmit({
success: function() {
var Image = $('<img />').attr({src:'_images/register-thanks.png', width:332, height:35, alt:"Success"});
$('#news-signup form').hide();
$('#news-signup').append(Image)
}
});
}
});
我从自己的.js文件加载。
感谢。
答案 0 :(得分:8)
是的,在Chrome中加载页面并按Ctrl-Shift-J打开JavaScript控制台。这将立即突出显示任何语法错误。
或者,获取Firefox的Firebug。
至于你的代码,如果你不知道自己在做什么,我认为你应该从小做起。首先使cycle()
函数工作,然后尝试其中一个验证,然后尝试另一个。一次做一点工作,每次添加新内容时,请尝试查看它是否有效,或者是否有效,以及是否会产生错误。
进入该阶段后,请遵循Robert's建议并通过JSLint运行。这将告诉你你做错了什么,比如在陈述的末尾遗漏了分号。
答案 1 :(得分:6)
您的代码返回了以下错误:
错误:
第14行第50个问题: 缺少分号。
$( '#freeQuote')。追加(图像)
第27行第48个问题: 缺少分号。
$( '#新闻注册')。追加(图像)
隐含的全球:$ 1,2,7,10,12,13,14,20,23,25,26,27, 文件1
JSLint讨厌我所做的一切:P
答案 2 :(得分:1)
帮助验证诸如parens或花括号嵌套之类的简单事物的好方法是使用Notepad ++或Eclipse之类的编辑器。
答案 3 :(得分:1)
为JS使用任何强大的编辑器 Aptana,PHPStorm是我试过的,看到它,至少是PHPStorm,当你的JS代码(包括jQuery)出错时显示非常好的通知
答案 4 :(得分:1)
你错过了两个地方的分号:$('#freeQuote')。append(Image)和$('#news-signup')。append(Image)
答案 5 :(得分:0)
已经发布了许多好主意......只需添加一件事。 使用QUnit或类似的Javascript单元测试工具来运行实际运行代码的单元测试。没有更好的方法来了解它“正确”而不是定义“正确”的含义,然后运行它并验证它是“正确的”。
QUnit是JQuery作者用来确保JQuery正常工作的东西。 Here's a getting started link
答案 6 :(得分:0)
即使对于jQuery而且没有使用特定于浏览器的插件,我更喜欢JSHint:
答案 7 :(得分:-1)
以下行应该包含其他所有内容:
$(document).ready(function() {
// ...
// everything else
// ...
});
此外,简短(和推荐)的形式是:
jQuery(function($) {
// ...
// everything else
// ...
});