Greasy Fork is available in English.
在链接上禁用拖拽行为,左键滑动时选择文本而不是打开链接。
当前为
// ==UserScript==
// @name 链接选中
// @version 0.2
// @namespace http://greasyfork.icu/users/1171320
// @description 在链接上禁用拖拽行为,左键滑动时选择文本而不是打开链接。
// @author yzcjd
// @author2 ChatGPT4 辅助
// @match *://*/*
// @run-at document-start
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
let isMouseDown = false;
// 阻止链接拖拽
document.addEventListener('mousedown', function(event) {
if (event.target.tagName === 'A') {
isMouseDown = true;
event.preventDefault(); // 禁用链接的拖拽行为
}
});
// 监听鼠标移动事件,选择链接文本
document.addEventListener('mousemove', function(event) {
if (isMouseDown && event.target.tagName === 'A') {
const link = event.target;
// 选中链接文本
const selection = window.getSelection();
const range = document.createRange();
range.selectNodeContents(link);
selection.removeAllRanges();
selection.addRange(range);
}
});
// 鼠标抬起时,恢复点击行为
document.addEventListener('mouseup', function(event) {
if (event.target.tagName === 'A' && isMouseDown) {
// 重置状态
isMouseDown = false;
}
});
})();