我会在这里详细描述。我在使用Firebug 1.5.3的Max OSX上使用Firefox 3.6.3。我该如何调试这个点击处理程序为什么不会触发?
我有两个版本的项目,一个工作,一个有bug。一个我下载,一个我手工输入。猜测哪一个不起作用。它们应该是相同的,除了我使用更新版本的jQuery并且文件命名不同。 jQuery版本不是问题。我使用了较老的jquery,而且我使用了较新的jquery。无论哪种方式,我仍然打破,下载的仍然有效。我捣毁了我的眼睛,试图看看这些项目是如何不同的。我不想做的唯一事情就是将工作代码复制到破坏的代码中,因为我需要能够把这些东西弄清楚,当它是我自己的唯一代码时会导致类似的问题。
在我的代码中没有任何错误可以在Firebug中看到,实际上,它的2/3工作正常。第二个按钮什么都不做。所以我想穿过。这些总是眼球的错误,我真的很难看到它们。
我把它放在公共服务器上。 http://colleenweb.com/jqtests/ex71.html我想调试ex71.js
如果你在工作区中设置了一个中断点,并在ex71.js的第13行设置了一个中断点,那么当你点击第二个按钮时,变量json就会具有期望的值。但是,如果你萤火虫这一个,它永远不会到达那里。我已经在html上了,而且所有的名字似乎都匹配了。我也想知道为什么按钮不正确,但这是一个CSS的事情。请告诉我我错过了什么,更重要的是,我可以使用什么工具/技术来找到这些类型的错误。
我摘下了回调=?那是因为我认为新的jQuery需要它。但没有喜乐。 至于引号,工作示例在json文件的值周围有单引号,关键字周围没有引号。无论如何,我将它们改为在服务器上加倍,包括键和值,并解决了问题。我花了很多年才弄明白这一点,而且我永远不会再把json文件的双引号留下。 感谢您的答案,两个伟大的假设。 – 2010-04-08 20:01:00
@tixrus:我不知道你用什么(服务器端技术)来创建你的JSON文件(我怀疑你手动创建了你的文件),但至少PHP的'json_encode'生成有效的JSON:http: //php.net/json_encode – 2010-04-09 22:10:20