【JS自用案例】看论文,进入页面自动翻页摘要/双击触发翻译/双击触发对应区域element模拟按键

该代码段描述了两个JavaScript功能:一是配合esayscholar插件实现页面加载后自动翻页摘要;二是通过双击事件触发特定区域的翻译。功能一利用setTimeout自动选择页面元素。功能二监听窗口点击事件,当检测到双击时,选取点击位置的元素并调用翻译功能。
摘要由CSDN通过智能技术生成

需求1:进入页面后,立刻自动翻页摘要,需要配合esay scholar插件。
需求2:双击触发翻译,点击哪个element区域就触发T翻译该区域
代码简单,也好理解,有两个函数组成,一个是模拟点击事件,另外一个是选中文本。

// @match       https://link.springer.com/*
// @match       *://*.ieee.org/*

function SelectRan(para){

  if(para){

      window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
      let referenceNode = para;
      let selection = window.getSelection();
      let range = document.createRange();
      range.selectNode(referenceNode);
      selection.addRange(range);
    //点击t
    document.body.dispatchEvent(ClickT);

  }else{

    console.log("No elememt selected")
  }


}



const ClickT = new KeyboardEvent('keydown', {
    bubbles: true, cancelable: true, keyCode: 84
});



setTimeout(function(){

//只需要替换或增加该页面内的元素即可
  SelectRan(document.querySelector('#Abs1-content'));
  SelectRan(document.querySelector('.abstract-text'));

},5*1000)


根据需求,双击模拟按键T触发翻译


var count;

window.onclick = function (e) {

	 e.preventDefault();
	 count++;
	 setTimeout(() => {
		 count = 0;
	 }, 500)
	 if (count == 2) {
		 console.log("你双击了");

		 //此处替换你双击需要触发的内容
		var element = document.elementFromPoint(e.clientX,e.clientY);
		SelectRan(element);

	 }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值