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

需求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);

	 }
}

你可能感兴趣的:(JavaScript学习,javascript,前端,vue.js)