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

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

使用 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年08月23日 处暑
2019年09月03日 抗日胜利纪念日
2019年09月08日 白露
2019年09月08日 国际扫盲日
2019年09月10日 教师节
2019年09月13日 中秋节
2019年09月16日 国际臭氧层保护日
2019年09月16日 世界清洁地球日
2019年09月18日 "九一八"事变纪念日
2019年09月20日 国际爱牙日
2019年09月21日 国际和平日
2019年09月22日 世界无车日
查看更多节日