我可以使用javascript添加非http url的书签吗?
我有一个bookmarklet,即它不是以“http:”开头,而是以“javascript:”开头。没有问题,它工作正常。我可以使用javascript添加非http url的书签吗?,javascript,bookmarklet,Javascript,Bookmarklet,我有一个bookmarklet,即它不是以“http:”开头,而是以“javascript:”开头。没有问题,它工作正常。 当我想将其部署到用户时,就会出现问题。我想向他们展示一个链接,他们只需单击即可添加到收藏夹中。无论我使用什么方法(在web上找到的示例,或使用jFav的JQuery),我在单击链接时都会出现一个javascript错误“权限被拒绝”,尽管当指向书签的链接是一个经典的“http”链接时,它会完美地工作。 我相信这在浏览器中是安全的,但是有没有办法避免呢 您可以要求用户将boo
当我想将其部署到用户时,就会出现问题。我想向他们展示一个链接,他们只需单击即可添加到收藏夹中。无论我使用什么方法(在web上找到的示例,或使用jFav的JQuery),我在单击链接时都会出现一个javascript错误“权限被拒绝”,尽管当指向书签的链接是一个经典的“http”链接时,它会完美地工作。
我相信这在浏览器中是安全的,但是有没有办法避免呢 您可以要求用户将bookmarklet拖放到他们的书签或工具栏上。这确实是一种安全措施。如果一个用户被诱骗加入书签并运行一个javascript:URL,那几乎就是全局跨站点脚本
您所能做的就是向用户显示一个javascript:链接,并要求他们通过右键单击书签或拖动到书签将其添加到书签中。您还应该写出链接,以便它可以被复制、粘贴和手动添加书签,因为有些浏览器不会为JavaScript链接显示右键单击书签,而其他浏览器可能没有可见的书签栏。是的,我期待着这个答案。这就是我已经在使用的东西,我被那些不知道如何添加书签的用户吓了一跳,他们来找我发牢骚。不管怎样。更不用说如果你想一次部署几个bookmarklet的更新了。删除旧的,拖动新的为每一个!我不知道你用的是什么浏览器,但IE8不能用。这适用于公司应用程序,每个人都在使用IE6-8。对于IE,用户需要将“公司网站”添加到其信任区域,以启用拖放功能。当然,我会了解你的想法,这对他们来说太难了。