Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我是否可以检测浏览器';书签工具栏是否已启用JavaScript?_Javascript_Bookmarklet - Fatal编程技术网

我是否可以检测浏览器';书签工具栏是否已启用JavaScript?

我是否可以检测浏览器';书签工具栏是否已启用JavaScript?,javascript,bookmarklet,Javascript,Bookmarklet,我有一个bookmarklet,我的用户一直在点击它,而不是先把它拖到书签栏。我想添加一个动画,它会在点击书签时运行,说“把我拖到你的书签栏!”并显示一个漂亮的箭头指向书签栏 但这只有在浏览器的书签栏实际可见时才有意义。我是否可以使用JavaScript检测书签栏是否可见?出于安全原因(以及其他原因),否-这在JavaScript中是不可能的 即使浏览器选择让客户端可以访问此信息,它也不是一个标准实现(跨多个浏览器支持)。在链接中放置一个div,当用户单击该链接时,该链接会保存消息,并使用CSS

我有一个bookmarklet,我的用户一直在点击它,而不是先把它拖到书签栏。我想添加一个动画,它会在点击书签时运行,说“把我拖到你的书签栏!”并显示一个漂亮的箭头指向书签栏

但这只有在浏览器的书签栏实际可见时才有意义。我是否可以使用JavaScript检测书签栏是否可见?

出于安全原因(以及其他原因),否-这在JavaScript中是不可能的


即使浏览器选择让客户端可以访问此信息,它也不是一个标准实现(跨多个浏览器支持)。

在链接中放置一个div,当用户单击该链接时,该链接会保存消息,并使用CSS显示消息
#bookmarklet:active#message{display:block;}
您需要一些javascript来在单击事件中返回false。

这将是特定于浏览器的,据我所知,没有标准。相反,你可能会考虑只使用鼠标上的一个花哨的小工具提示把我拉到你的书签栏。虽然我鼓掌的情绪,我可以想象大多数bookmarklet用户的书签栏都是打开的:)或者你可以有一个全局脚本,运行并搜索带有
href
值的链接,该值以
javascript:
开头,并附加所述事件处理程序。@Nightfirecat你可以,但您可能希望附加一个类名,而不仅仅是一个事件处理程序;我可能会将消息与链接完全分离,并通过JavaScript处理整个事情,以允许更精彩的动画。@Will Martin当然,通过CSS3,您可以获得一些非常精彩的动画,但遗憾的是它们尚未完全实现。