【问题标题】:Javascript not working on localhost, but it is working on Live siteJavascript 不能在 localhost 上运行,但它可以在 Live 站点上运行
【发布时间】:2011-10-30 15:06:45
【问题描述】:

我在 XAMPP 本地主机上遇到 JavaScript 问题。折叠按钮、转到顶部按钮和 jQuery 新闻提要在我的本地主机上的每个站点上都不起作用。

但 Facebook、Twitter、Plusone 按钮从远程服务器(即从各自的社交网站)正确加载。

所以,我认为它缩小了我的范围,即本地托管的 JavaScript 文件没有执行,而来自 Facebook 等的文件正在执行。

我尝试重新安装 XAMPP,但没有成功。

【问题讨论】:

  • 一个代码示例会很棒!!
  • 会不会是 XMLHTTPRequest 的同源限制?
  • 在 Chrome 开发者工具控制台中检查 404 错误 - 可能只是您的路径不正确。
  • @JLevett 以 Vbulletin.com 为例,返回顶部和论坛折叠按钮工作正常。在本地主机中的我的网站上,它什么也不做。同样,我添加了一个 Jquery 新闻代码,它在我的实时站点上运行,但在本地主机上运行 :(KerrekSB - 对不起兄弟,我不明白,你能详细说明吗?德克斯特 - 我使用 Firebug 和错误控制台检查,一切看起来很好。

标签: javascript xampp localhost


【解决方案1】:

我知道这很旧,但是我遇到了同样的问题,并在搜索解决方案时发现了这个问题。但是我在 ubuntu 上安装了lampp,并且由于 Linux 要求执行任何操作的权限,因此驻留在 htdocs 中的本地 js 文件未经许可。之后:

sudo chmod 777 -R /opt/lampp/htdocs   

... 一切正常。希望这对未来的 wanabee 网络开发人员有所帮助。

【讨论】:

    【解决方案2】:

    无论您的文件是否是本地文件都无关紧要...javascript 仍应被执行。尝试使用一些调试工具,例如查看是否有任何仅在本地计算机上发生的错误。因为它可能是您正在运行一些依赖于域或其他的代码。

    【讨论】:

    • 感谢您的回复!我确实在 Firebug 中检查过,但仍然找不到问题所在。
    • 尝试安装 webdeveloper 工具栏...看看在运行页面时是否会显示更有意义的错误消息。
    • 嗨,Baszz,我安装了 Web Developer 插件并遇到了很多错误,但看起来都很相似。错误之一是引用未定义的属性 f[h] ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js
    • 不是真的 :) 我的意思是 js 可能会在本地触发,但是例如我们心爱的 g+1 按钮在您的本地站点上不起作用;)使用您自己的 css 样式表自定义时,fb like 按钮也不起作用;)
    • 但问题是,在 localhost 我已经安装了许多站点。所有这些网站也不执行本地 Javascript 代码。
    【解决方案3】:

    我知道这篇文章很旧并且已经给出了答案,我只是想给出我遇到的可能原因的答案,以防其他人发现它并且没有帮助。

    确保通过查看您的页面源代码来执行您的整个 html 代码。对我来说,我的一半代码没有被执行,因为 PHP 错误在本地数据库上运行,但在实时数据库上没有运行。这导致 HTML 从我的 javascript 上方的那一点开始剪切。

    所以请检查您的页面来源。如果它在某处被切断,找出原因:)

    【讨论】:

      【解决方案4】:

      从命名空间示例的文件名中删除任何(前在后)空格:localhost:port/dir /index.html
      本地主机:端口/目录/index.html

      【讨论】:

      • 在此示例中,空格位于 dir.../ 之后,因为必须删除所有空格 dir/ 。或重命名文件名。
      【解决方案5】:

      在类似的情况下, 如果 Web 项目站点在 Live Server 上运行 JS,但不在本地打开的 index.html 上, 尝试检查 HTML 文件路径的有效性,

      例如,你可能写过:

      <script src="script.js"></script>
      

      代替:

      <script src="./script.js"></script>
      

      尝试在文件名前添加./。

      ./ 表示当前目录。

      【讨论】:

      • 不以/? 或 URL 方案开头 表示“当前目录”,因此不会有任何区别。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-23
      • 1970-01-01
      • 2021-07-02
      • 2014-10-07
      • 2021-08-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多