你的位置:首页 > Java教程

[Java教程]【鬼脸原创】谷歌扩展

目的

        用键盘替代鼠标,做一个安静刷知乎的美男(女)子!

功能

 
功能按键说明
直接定位到搜索框q 
打开 首页w 
打开 话题e 
打开 发现r 
打开 消息m 
打开 个人主页u 
打开 我的草稿c 
打开 我的收藏s 
打开 关注的问题g 
打开 邀请我回答的问题y 
打开当前可见范围内的第一个问题回车仅针对<首页>下的<最新动态>
自动加载 更多空格或者↓仅针对页面加载方式为滚动加载时
上一页or下一页←  or →仅针对页面加载方式为翻页加载
忘记这些快捷键时,直接敲击 h 键,会弹出帮助信息。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

实现代码

        只介绍关键的两个:

        1)自动加载更多

             说明:当刷最新动态时,在不断滚动的过程中,底部会出现‘更多’按钮,每次都需要用鼠标点击一下

             思路:当每次滚动至底部时,自动触发‘更多’按钮的点击事件。

             实现代码:           

if(e.keyCode==40||e.keyCode==32){  //下箭头 || 空格  var scrollTop = $(window).scrollTop();  var scrollHeight = $(document).height();  var windowHeight = $(window).height();  if(scrollTop + windowHeight == scrollHeight){             document.getElementById('zh-load-more').click();   }    }

       2)打开当前可见范围内的第一个问题

           说明:刷最新动态时,看到感兴趣的问题,每次都需要手动点击一下,能不能直接敲击回车,一键打开这个问题呢?答案是肯定的。

           思路:通过分析html源码,得知每个问题都是一个固定高度的div。所以可以通过得到当前滚动条的Y坐标,除以div的高度,就可以得到目标。

           实现代码

if(e.keyCode==13) {    //回车:直接打开最接近顶部的那条问题    //每条问题的height==219    var y= GetPageScroll().Y; //滚动条的位置    var index =parseInt(parseInt(y)/220); //当前的div    var title= $('#js-home-feed-list div.feed-item').eq(index).find('h2').html();    var a_href = $('#js-home-feed-list div.feed-item').eq(index).find('h2').find('a').attr('href');    window.open('https://www.zhihu.com'+a_href);     
}function GetPageScroll() { var x, y;
if(window.pageYOffset){
// all except IE y = window.pageYOffset; x = window.pageXOffset; }
else if(document.documentElement && document.documentElement.scrollTop){
// IE 6 Strict y = document.documentElement.scrollTop; x = document.documentElement.scrollLeft; }
else if(document.body) {
// all other IE y = document.body.scrollTop; x = document.body.scrollLeft; } return {X:x, Y:y};}

 

完整代码:=请点击我=

 

 

V1.0只是简单实现了上一页、下一页功能,详情请点击我!