当前位置: 移动技术网 > IT编程>网页制作>CSS > #编写第二个ChromeExtension+CopyURL+Title

#编写第二个ChromeExtension+CopyURL+Title

2018年12月19日  | 移动技术网IT编程  | 我要评论

我们在上网时,常常需要把刚兴趣的文章记录下来,方便以后继续细看。如果记录为markdown格式的话,还可以方便的把文章链接加入到自己创作的文章内。

今天编写的小工具,就是一个chrome extension,当用户在当前页面上按快捷键command+shift+y的时候,可以把当前页面的标题和url组合保存到剪贴板,如下形式:

[title](url)

在此文之前,如果你没有看过# 编写第一个chrome extension - 掘金,建议首先阅读此文。

添加键盘快捷键的方法

chrome提供了command api,可以通过它来添加触发chrome extension中操作的快捷键。可以在manifect.json内声明如下:

{

"commands": {

"run": {

"suggested_key": {

"default": "ctrl+shift+y",

"mac": "command+shift+y"

},

"description": "toggle feature foo"

},

}

这意味着在用户按下指定按钮(ctrl+shift+y),会触发一个叫做run的操作。

在后台页面中,您可以通过oncommand.addlistener将处理程序绑定到清单中定义的命令。 例如:

chrome.commands.oncommand.addlistener(function(command) {

console.log('command:', command);//run

});

拷贝到剪贴板的方法

可以在你的background.html内添加一个textarea,用于拷贝到剪贴板的中转:

需要执行操作的时候,会把内容写入此textarea,然后执行命令完成剪贴动作:

document.execcommand("copy", false, null);

整合后的js代码如下:

function copytitleurl() {

chrome.tabs.getselected(null, function(tab) {

copytoclipboard( "["+tab.title + "](" + tab.url +")");

});

}

function copytoclipboard(str) {

var obj=document.getelementbyid("clipboard");

if( obj ) {

obj.value = str;

obj.select();

document.execcommand("copy", false, null);

}

}

chrome.commands.oncommand.addlistener(function(command) {

if("run" === command){

copytitleurl()

}

});

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网