绝大多数HTML文件用手机浏览器点开即可,但含JS/CSS或AJAX的页面需通过本地服务器(如KSWEB、Python服务)或在线平台(如CodePen)绕过file://协议的跨域限制才能正常运行。直接打开就能看,但得选对方式——**绝大多数 HTML 文件用手机浏览器点一下就行,但含 JS/CSS 资源或 AJAX 的页面,直接双击会白屏或报错**。
安卓和 iOS 都支持,前提是文件路径正确、扩展名是 .html 或 .htm,且没被压缩或改名成 .txt。
index.html 放进手机的 Download 或 Documents 文件夹(别放在微信缓存、QQ 接收目录里,这些路径常被限制访问)file:/// 路径适合调试定位当点不开、或想确认浏览器到底加载了哪个文件时,手动输入路径最可靠。路径格式固定,但安卓/iOS 差异大:
file:///storage/emulated/0/Download/test.html(/storage/emulated/0/ ≈ 内部存储根目录)file:// 在 Safari 中基本无效;必须走“备忘录中转”或用支持本地文件的 App(如 Acode)我的网页.html 建议重命名为 my-page.html
直接双击打开的 HTML,浏览器以 file:// 协议加载,现代浏览器默认禁止 JS 读取本地 .js、.css 或发起 fetch() 请求——这是安全策略,不是你代码写错了。
Access to script at 'file:///xxx.js' from origin 'null' has been blocked
KSWEB(Android)或 ServerDog,把整个项目文件夹设为 Web 根目录,然后访问 http://127.0.0.1:8080/index.html
python -m http.server 8000,手机连同一 Wi-Fi 后访问
http://192.168.x.x:8000
Acode 或 QuickEdit 编辑器,内置预览功能会自动起临时 HTTP 服务,绕过 file:// 限制不想折腾路径、权限、服务器?把 HTML 代码粘贴到在线平台,生成链接发给任何人,手机点开即用。
CodePen、JSFiddle、Glitch 都支持纯前端代码实时运行,生成的链接可直接在手机 Safari/Chrome 打开 换成公网 URL,否则图不显示
开了却看不到 JS 效果、为什么图片不显示、为什么按钮点了没反应**——这些问题几乎都指向同一个根源:file:// 协议的权限墙。绕过去的方式就那几个,选最顺手的一个,比反复重命名文件或换浏览器有用得多。