我有一个小书签,它启动了一个window.open javascript函数,用我的小书签打开一个小窗口 - 用于在任何被浏览网站和我的服务器之间进行通信的外部特征。我想要一个收藏夹图标在书签添加到书签工具栏时显示出来。我意识到bookmarklet是JavaScript,没有绑定的域名,所以要达到这个目标要么很困难,要么是不可能的。将favicon添加到javascript Bookmarklet(使用window.open)
我对这个问题的理解:
网站图标很容易理解,一个HTML文档的头内的链接。浏览器可以通过引用为实际网站添加书签时提取此信息。然而,正如你看到我的小书签在没有HTML的情况下运行的JavaScript启动代码,因此没有链接到favicon。我还没准备好放弃,虽然,我觉得有一些注射可以做出...
截至目前,小书签启动代码看起来是这样的:
当前脚本 - 书签,无图标(注意,所有的代码与换行符格式化 - 不会在所有的浏览器,通常其单行)
javascript:void(window.open(
'http://mydomain.com/bookmarklet/form?u='
+encodeURIComponent(location.href)+
't='+encodeURIComponent(document.title),
'test','status=0,toolbar=0,location=0,menubar=0,
resizable=false,scrollbars=false,height=379,width=379'
));
最接近的事我已经找到一个解决方法下面,但它不会打开一个新的窗口 - 绝对牛逼创建一个新的标签与HTML作为页面:
工作图标,没有书签窗口
javascript:'<!DOCTYPE html>
<html><head>
<title>Hello World</title>
<link rel="icon" type="image/png" href="http://www.tapper-ware.net/devel/js/JS.Bookmarklets/icons/next.png" />
</head>
<body>Hello World</body>
</html>';
我已经试过了两者的结合,但它似乎没有使用图标。我很想知道是否有人可以看到一种解决方法..我认为这可能是可能的,但我不认为它正确设置,因为我一直在尝试。
我的两个混合 - 书签,但没有图标
javascript:'<!DOCTYPE html>
<html><head>
<title>Hello World</title>
<link rel="icon" type="image/png" href="http://www.tapper-ware.net/devel/js/JS.Bookmarklets/icons/next.png" />
</head><body>Hello World</body></html>';
window.open('http://mydomain.com/bookmarklet/form?u='
+encodeURIComponent(location.href)+
'&t='+encodeURIComponent(document.title),
'test',
'status=0,toolbar=0,location=0,menubar=0,resizable=false,
scrollbars=false,height=379,width=379').void(0);
我所做的是用烧制window.open之前的HTML结构(),这个成功打开我的书签在新窗口中,但没有收藏图标显示为书签图标。
逻辑解决方案:
我对这个问题的看法是有书签指向一个页面,是一个简单的HTML文件,在<head>
一个图标链接,启动脚本。但是,我不希望在一个新的选项卡中打开一个空白的HTML文件,然后启动一个弹出窗口..解决方法..?
存在着类似的问题,但我似乎没有找到我要找的答案:
How to have favicon/icon set when bookmarklet dragged to toolbar?
来源为可用的JavaScript图标(但没有书签):
http://www.tapper-ware.net/blog/?p=97
我会对你目前的知识/想法感兴趣
要创建iFrame,它仍然必须是JavaScript链接。这只会让做同样的事情变得更加复杂,并且遇到完全相同的问题。 – Kayla 2011-06-01 02:12:12
我的想法,但感谢这个想法。 – Atticus 2011-06-01 02:24:47