iOS Safari地址栏执行JavaScript打开链接的方法咨询
iOS Safari地址栏执行JavaScript代码的现状与替代方法
iOS Safari从较新版本开始,确实限制了直接在地址栏输入javascript:协议代码的执行,并非彻底弃用,但触发方式有调整。
可行的执行方式
- 通过书签触发:
- 新建书签,任意填写名称,在URL栏填入目标代码,比如
javascript:alert("hi"); - 保存书签后,在任意页面打开该书签,即可执行对应的JavaScript代码
- 新建书签,任意填写名称,在URL栏填入目标代码,比如
- 地址栏输入的特殊处理:
直接粘贴javascript:开头的代码时,Safari会自动移除前缀。可以先输入任意字符(比如a),再粘贴代码,最后删掉前面的a,再执行
限制的原因
苹果做出这个调整主要是为了防范恶意脚本通过地址栏注入,提升浏览器安全性,避免用户误执行恶意代码导致隐私泄露或页面异常。
内容的提问来源于stack exchange,提问作者Colin
相关产品推荐
相关产品推荐

