为什么javascript:URL不能在Safari上使用扩展程序?

时间:2013-09-10 16:51:04

标签: safari-extension

我正在构建一个Safari扩展程序,通过使用javascript:URL动态创建表单来伪造POST。

当我尝试加载此网址时:

tab.url =“javascript:”+ foo;

我得到“Safari无法使用JavaScript进行此操作”

我尝试过做一些简单的事情:

tab.url =“javascript:alert('hello')”;

我得到同样的错误。

我尝试将我的网址直接粘贴到网址栏中,但效果很好。

是否有任何原因Safari不允许扩展加载javacript:URL?或者有一些解决方法吗?

1 个答案:

答案 0 :(得分:0)

要回答我自己的问题,您可以改为使用数据网址:

data:text/html,<body></body><script>alert('hello');</script>

与javascript:URL一样有效。但是,您需要确保包含正文,以防万一您的书签依赖于正文。

我仍然不知道为什么javascript:URL工作在Safari扩展程序中。