脚本对 划词弹图标栏工具 拆分
图标说明:
默认自带百度首页、Google首页、Instagram、微博首页、知乎主页、Greasyfork、Tampermonkey、Github、历史记录、扩展、下载页面图标
双击左键、双击右键弹图标栏:
参照大佬@inch 的 双击关闭页面 和 双击右键粘贴
选下方对应代码,在242行插入
//双击左键
document.addEventListener('dblclick', function (e) {
icon.style.top = mouseEvent.pageY -20 + 'px';//设置文字下方距离
if(mouseEvent.pageX -70<10)
icon.style.left='10px';
else
icon.style.left = mouseEvent.pageX -70 + 'px';
fadeIn(icon);
clearTimeout(timer);
timer = window.setTimeout(TimeOutHide, 6000);
});
document.addEventListener('mousedown', function (event) {
if (event.detail > 1) {
event.preventDefault();
// of course, you still do not know what you prevent here...
// You could also check event.ctrlKey/event.shiftKey/event.altKey
// to not prevent something usef
}
}, false);
//双击右键
var preTime=0,
preElemnt=null;
window.addEventListener('contextmenu',function (event) {
var el = event.target;
if (el != null) {
var nowTime=new Date().getTime();
if((nowTime-preTime<500&&preElemnt==el)||event.altKey){
icon.style.top = mouseEvent.pageY +25 + 'px';//设置文字下方距离
if(mouseEvent.pageX -70<10)
icon.style.left='10px';
else
icon.style.left = mouseEvent.pageX -70 + 'px';
// console.log(mouseEvent.pageX+","+mouseEvent.pageY, mouseEvent)
fadeIn(icon);
clearTimeout(timer);
event.preventDefault();
// return false;
}
}
preTime=nowTime;
preElemnt=el;
timer = window.setTimeout(TimeOutHide, 6000);
});
//长按左键抬起弹出
var holdTime = false;
function init() {
document.addEventListener('mousedown', mouseStart, true);
document.addEventListener('mouseup', mouseEnd, true);
function mouseStart(e) {
timer = setTimeout(function() {
holdTime = true;
console.log(holdTime);
}, 300);
}
function mouseEnd(e) {
clearTimeout(timer);
if (holdTime == true && !window.getSelection().toString()) {
e.preventDefault()
e.stopPropagation();
holdTime = false;
console.log(holdTime);
icon.style.top = mouseEvent.pageY +25 + 'px';//设置文字下方距离
if(mouseEvent.pageX -70<10)
icon.style.left='10px';
else
icon.style.left = mouseEvent.pageX -70 + 'px';
fadeIn(icon);
clearTimeout(timer);
timer = window.setTimeout(TimeOutHide, 6000);
}
}
}
init();
//长按左键抬起前弹出
var holdTime = false;
function init() {
document.addEventListener('mousedown', mouseStart, true);
document.addEventListener('mouseup', mouseEnd, true);
function mouseStart(e) {
timer = setTimeout(function() {
holdTime = true;
console.log(holdTime);
if (!window.getSelection().toString()) {
e.preventDefault()
e.stopPropagation();
holdTime = false;
console.log(holdTime);
icon.style.top = mouseEvent.pageY +25 + 'px';//设置文字下方距离
if(mouseEvent.pageX -70<10)
icon.style.left='10px';
else
icon.style.left = mouseEvent.pageX -70 + 'px';
fadeIn(icon);
}
}, 300);
}
function mouseEnd(e) {
clearTimeout(timer);
timer = window.setTimeout(TimeOutHide, 6000);
}
}
init();
功能如下:
1 键盘快捷键Alt+o在鼠标处弹图标栏(弹窗图标栏划词内容为空,为了鼠标手势调用快捷键弹图标栏,点击图标访问网站,不需要再新建标签页,输入地址或者点击收藏的书签访问)
2 默认点图标后台标签页打开 (如需点击图标跳转到标签页,注释最后面open(url)函数,移除上一块代码注释)
其他说明:
1 混用了base-64、图床的图标格式,默认图标大小16px(由于用的笔记本,先前没考虑到使用显示屏的各位,初始图标大小设置的16px,已改为默认24px)
2 需更替换对应图标icon,可在 icon8 搜索名称,获取图片链接,更改代码中img后的图标链接部分
更新说明:
百分浏览器自身另外设置了一堆快捷键,默认快捷键alt+o无法弹出图标栏
在原代码422行,数字改成86,也就是alt+v测试正常,if(keynum==86&&event.altKey){
更新:
2.1.0 更换imgur图床为ibb
2.0.0 图标默认大小调整为24px
1.1.1 修复一些网站地址错误
1.1.0 修复一些网站地址错误