0

我已阅读有关此主题的所有相关文章,但没有一个解决方案适用于我。

如标题所示,我有一个不工作的外部 jquery 脚本。我最初在 php 文档中开发了脚本,它运行良好,但在我将它移到外部文件后,它完全停止工作。其他类似问题中涉及的建议解决方案均不适用。

  1. jquery 库源代码在我的脚本之前。
  2. 提供给脚本的路径是正确的。
  3. 脚本绑定到 $(document).ready 事件

一个奇怪的事实可能提供了一个线索,但我不知道如何解释它:在 Chrome 开发者工具的资源选项卡中,外部脚本显示为空白。没有 404 错误,因此脚本已被服务器找到并返回,但它显示为完全空白(除非您双击以在单独的选项卡中打开脚本。)

这是脚本:

$(document).ready(function() {
    $("#menuBrowser li").click(function() {

        if ($(this).children().is(':visible')) {
            $(this).children().hide('slow');
        } else if ($(this).children().is(':hidden')) {
            $(this).children().show('slow');
        }    
    })
})​

更新:我刚刚将外部脚本的内容复制回主文件,但它不起作用。我使用内联脚本恢复到较早的保存状态并且它有效。然后,我将该工作脚本复制并粘贴回一个外部文件中,它就可以工作了。当我第一次将脚本复制并粘贴到外部文件时,一定发生了一些事情,但如果我知道它是什么,那就见鬼了。

4

2 回答 2

0

好吧,只是为了笑,我通过 jshint.com 运行了这个,当然打开了 JQuery 选项,它说:

Line 2: $("#menuBrowser li").click(function(){

Missing "use strict" statement.

Line 10: })

Missing semicolon.

Line 12: })

Missing semicolon.

我希望这有帮助,

于 2012-08-17T19:07:39.277 回答
0

您是从 jsFiddle 或类似网站复制的吗?如果是这样,您很可能在其中有一些不可见的字符。

为了删除那些不可见的字符,手动重新输入整个脚本(不要复制粘贴),字符应该被删除。

检查控制台是否有问题。Firefox 和 WebKit 浏览器(Google Chrome、Safari)都有相当不错的 JavaScript 错误记录程序。

为什么不尝试清空缓存?也可以随时提供帮助。

如果涉及服务器端脚本,白页通常意味着服务器错误。

除非您提供更多信息,否则我现在无法为您提供任何帮助。

干杯! :)

于 2012-12-14T10:39:19.437 回答