使用 Bookmarklet 获取当前网页的 Markdown 地址

更新日期: 2017-02-25 阅读次数: 2806 分类: 浏览器

使用 markdown 记录笔记,最痛苦的地方莫过于写引用地址,既要复制对应网页的 title, 又要复制其 URL。

之前写过一个 chrome 插件用于生成当前页面的 markdown 地址,但是由于没有上传到插件商店,跨电脑没有办法同步,所以废弃了。之后又打算使用 greasemonkey 写个脚本,奈何 greasemonkey 做点击触发非常不方便

  • 不做点击按钮触发,每次页面加载之后都弹窗出个提示框太碍事
  • 做点击按钮触发,会破坏当前页面的原始效果

后来想到,之前见过浏览器书签可以写 js 的做法,是否可以使用书签的方式实现。Google 了一下,果然可以。

即,bookmarklet, 中文翻译是"小书签", 代码格式如下

javascript:(function(){
	// TODO
})();

例如,提取当前页面的 markdown 地址

javascript:(function(){
	var title = document.getElementsByTagName("title")[0].innerHTML;
	var url = window.location.href;
	alert('[' + title + '](' + url + ')');
})();

新建一个书签,把这段 js 代码保存到地址栏中即可。在 firefox 中测试成功。

Firefox Bookmarklet Alert

HTTPS fails

需要注意的是,对于使用 HTTPS 的网页,bookmarklet does't work.

但并不绝对,有点 https 网页还是能获取到。感觉 HTTPS 还是有安全等级之分。

如何管理 bookmarklet

还是专门建个 github 项目集中管理比较方便

sunzhongwei/bookmarklets

参考

爱评论不评论

近期节日

2019年04月22日 世界地球日
2019年04月23日 世界读书日
2019年04月26日 知识产权日
2019年04月30日 全国交通安全反思日
2019年05月01日 国际劳动节
2019年05月04日 五四青年节
2019年05月06日 立夏
2019年05月08日 世界红十字日
2019年05月08日 世界微笑日
2019年05月12日 国际护士节
2019年05月12日 母亲节
2019年05月12日 佛诞
查看更多节日