javascript - Window.location 在 JavaScript 中停止工作
问题描述
我正在制作一个网络应用程序。刚刚发生了一件非常奇怪的事情。我正在一个文件夹中编写一个页面,然后我想从一开始就测试我的应用程序。这段代码在停止工作前半小时工作:
window.location = "/navigation/navigation.html";
我没有重命名任何东西,也没有更改第一个 .js 文件。我使用 Linux Ubuntu 和 Google Chrome 来查看我的工作。系统有什么变化吗?我应该怎么做才能解决这个问题?
第一个 .js 程序位于登录文件夹中,重定向到导航文件夹。
解决方案
简短的坏答案:
用这个。
window.location = "./navigation/navigation.html";
长的好答案:
这取决于您使用的 Web 服务器。
如果您使用的是 nginx / apache,并将 root 设置为 navigation.html 所在的文件夹,那么绝对路径"/navigation/navigation.html"
就可以了。
如果你只是双击 HTML 文件,那么你需要使用相对路径,如下:
window.location = "./navigation/navigation.html";
尝试有一个一致的发展环境。您可以配置的最简单的服务器是http-server
npm 包,您可以使用以下命令安装它:
sudo apt install npm
npm install -g http-server
然后使用如下:
cd /folder/of/your/project
http-server # command hangs this terminal!
localhost:8080
然后在您的网络浏览器中打开。然后,您的网络应用程序中的所有路径相对于您运行http-server
命令的文件夹都是绝对路径。例如,您可以/folder/of/your/prjoect/navigation/navigation.html
通过输入 url来访问localhost:8080/navigation/navigation.html
。
如果您准备迎接挑战,请尝试安装和使用,nginx
而不是简单的http-server
. 它为您提供了更多选择,包括运行服务器端代码的能力。您可以使用 apt 安装它,并在此处了解如何使用它:https ://nginx.org/en/docs/beginners_guide.html
推荐阅读
- linux - 阻止访问在 Cpanel linux 主机上创建文件或文件夹
- javascript - 在js中获取位置
- xamarin - Xamarin.Android Camera2 API 相机不会出现在默认应用程序中
- javascript - 如何使用 ajax 和 php 通过 url 从我的桌面上传文件到 web 服务器
- python - Python OpenCV获取fitLine的角度方向
- php - 如何获得 DiVs 级别?
- r - R(dplyr 包)- 每组至少一行(随机抽样,每组 10% 行)
- node.js - 如何在特定通道中发送错误消息
- java - 请帮我解释一下,当这些符号组合在一起时,我知道这意味着什么
- python - Django-在 django-admin 中显示记录,包括组、最大计数和时间戳