Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
外部jquery脚本不工作_Jquery_External - Fatal编程技术网

外部jquery脚本不工作

外部jquery脚本不工作,jquery,external,Jquery,External,我已经阅读了关于这个主题的所有相关文章,没有一个解决方案适用于我 正如标题所示,我有一个外部jquery脚本无法工作。我最初在php文档中开发了这个脚本,在那里它工作得非常好,但在我将它移动到一个外部文件后,它就完全停止了工作。其他类似问题中涉及的建议解决方案均不适用 jquery库源代码在代码中先于我的脚本 提供给脚本的路径是正确的 脚本已绑定到$(document).ready事件 一个奇怪的事实可能提供了一个线索,但我不知道如何解释它:在ChromeDeveloperTools的resou

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

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

  • jquery库源代码在代码中先于我的脚本
  • 提供给脚本的路径是正确的
  • 脚本已绑定到$(document).ready事件
  • 一个奇怪的事实可能提供了一个线索,但我不知道如何解释它:在ChromeDeveloperTools的resources选项卡中,外部脚本显示为空白。没有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');
            }    
        })
    })​
    

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

    好吧,为了让大家笑一笑,我通过jshint.com运行了这个脚本,当然打开了JQuery选项,它说:

    Line 2: $("#menuBrowser li").click(function(){
    
    Missing "use strict" statement.
    
    Line 10: })
    
    Missing semicolon.
    
    Line 12: })
    
    Missing semicolon.
    

    我希望这会有所帮助,

    您是从JSFIDLE或类似网站复制的吗?如果是这样的话,你很可能有一些看不见的字符在那里

    要删除这些不可见的字符,请手动重新键入整个脚本(不要复制粘贴),然后应删除这些字符

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

    为什么不尝试清空缓存呢?我也能帮上忙

    如果涉及服务器端脚本,白页通常表示服务器错误

    现在我帮不了你什么,除非你提供更多的信息


    干杯!:)

    控制台中是否有错误?在浏览器中打开脚本时会发生什么情况?我会在脚本顶部添加一个警报或console.log,然后查看是否可以显示该脚本。然后您将确定脚本至少正在加载和执行。我忘了提到我在Chrome Developer Tools控制台中没有收到任何javascript错误。当我在浏览器中打开脚本时,它以纯文本显示。分号是一个巨大的疏忽。我很惊讶这个脚本居然能工作,即使是在内联上下文中。然而,添加它们并不能解决问题,添加“使用严格”也不能解决问题;语句在文件顶部。@danielrant这些分号不重要。拥有它们很好,但它们肯定不会造成问题。请参阅我在OP上的评论。如果路径都正确,那么我能想到的唯一建议就是清除浏览器缓存并关闭/重新打开浏览器。我有很多JS问题,浏览器没有得到我所做的更改。没有骰子。具有干净缓存的新浏览器也会产生相同的结果。好的,您可以将该页面与firefox一起使用,并使用firebug查看jquery在做什么吗?希望firebug会给你一个错误代码或者其他什么东西。。。