如何检测浏览器中是否安装了书签?

时间:2013-09-11 00:23:46

标签: javascript browser bookmarklet

我想检测用户是否已将我创建的书签拖放到书签菜单中。有没有办法做到这一点?

3 个答案:

答案 0 :(得分:2)

在绝对确定的情况下,他们在正常情况下无法简单地安装书签。

要知道他们已经安装了 AND USED ,几乎可以确定书签是可能的。例如,如果您的bookmarklet调用或导航到URL,您可以向URL添加&origin=bookmarklet之类的参数并在服务器上跟踪该参数。

您还可以非常公平地了解一个人至少尝试使用bookmarklet链接上的drag事件来安装书签。像

这样的东西
<a ondrag="recordBookmarkletDragEventOnServerWithAjax()"
  href="javascript:/* bookamrklet code */">myBookmarklet</a>

您可以在每个书签中嵌入一个唯一的ID号,以增强您的跟踪安装跟踪功能。例如:

<a ondrag="recordBookmarkletDragEventOnServerWithAjax('9h297gh3sdsd')"
  href="javascript:id='9h297gh3sdsd'; /* bookmarklet code sends id to server */"
  >myBookmarklet</a>

使用上面的ID号,看看有多少人拖动你的书签但从不使用它可能会很有趣。

或者你可以安装一个插件或扩展程序,它可以自动调用你的服务器确认安装。

答案 1 :(得分:1)

没有;你做不到。

但是,您可以对服务器进行日志点击。 (或者单击它上面的JS代码)

答案 2 :(得分:0)

没有。出于安全/隐私原因,不允许网页访问用户的书签(并且即使有明确的许可也没有API允许它)。只有浏览器扩展可能能够这样做(对于FF,然后有Bookmarks API)。请注意,bookmarklet不是“已安装”,它们只是存储为书签的javascript片段。

相关问题