【鬼臉原創】谷歌插件--知乎快捷翻頁

来源:http://www.cnblogs.com/lanleiming/archive/2016/02/15/5191290.html
-Advertisement-
Play Games

背景: 刷知乎時,老是需要用滑鼠點下一頁,對於懶人來說,太過麻煩。 功能: 敲擊 “←” 、“→”,實現上一頁、下一頁功能。 思路: 通過谷歌擴展來實現:監聽鍵盤事件,如果keycode為37、39時,進行上一頁、下一頁操作。 疑問: 本想著如果檢測到keycode為37、39時,直接觸發按鈕“上一


背景

        刷知乎時,老是需要用滑鼠點下一頁,對於懶人來說,太過麻煩。

功能

        敲擊 “←” 、“→”,實現上一頁、下一頁功能。

思路

       通過谷歌擴展來實現:監聽鍵盤事件,如果keycode為37、39時,進行上一頁、下一頁操作。

疑問

       本想著如果檢測到keycode為37、39時,直接觸發按鈕“上一頁”、“下一頁”的點擊事件;無奈總是不行,如果有懂的,還請賜教~

       最後通過捕獲當前的url,直接進行跳轉。

代碼

       圖方便,直接引用了Jquery庫。

       總共插件分為幾個部分:jquery庫、logo圖標、manifest.json、自定義js

      1)manifest.json 內容如下:

 1 {
 2     "manifest_version": 2,
 3     "name": "知乎快捷翻頁",
 4     "version": "1.0",
 5     "description": "使用左右箭頭進行快速翻頁",
 6     "icons": {
 7         "16": "16.png",
 8         "48": "48.png"      
 9     },
10     "browser_action": {
11         "default_icon": {
12             "19": "16.png",
13             "38": "48.png"
14         },
15         "default_title": "使用左右箭頭進行快速翻頁"        
16     },
17     "content_scripts": [
18     {
19       "matches": ["https://www.zhihu.com/*"],     
20       "js": ["js/jquery.js","js/zhihu.js"]
21     }
22   ]
23 }

        2)自定義js——zhihu.js 內容如下:

 1 String.prototype.endWith=function(endStr){
 2   var d=this.length-endStr.length;
 3   return (d>=0&&this.lastIndexOf(endStr)==d)
 4 }
 5 document.onkeydown=function(event){   
 6       var curl = window.location.href;//當前url
 7       var c_page =1;//當前頁碼
 8       var url_header='';//當前url的主體     
 9       if(curl.indexOf('?page=')>-1){ 
10        url_header = curl.split('?')[0];
11        c_page= parseInt(curl.split('page=')[1]);       
12      }else if(curl.endWith('top-answers')||curl.endWith('questions'))
13      {
14         url_header = curl;
15      }
16      var prev_page=c_page-1<1?1:c_page-1;
17      var next_page = c_page+1;//下一頁
18      var e = event || window.event || arguments.callee.caller.arguments[0];     
19       if(e.keyCode==39)
20       { 
21         //下一頁  
22         window.location.href=url_header+'?page='+next_page;
23       }else if(e.keyCode==37)
24       {
25         //上一頁  
26         window.location.href=url_header+'?page='+prev_page;
27       }
28   
29  }; 

使用

      

資源

       1)谷歌擴展教程

       2)完整的知乎翻頁擴展

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 瀏覽器中的Javascript 客戶端javascript就是運行在瀏覽器中的javascript,現代的瀏覽器已經有了很好的發展,雖然它是一個應用程式,但完全可以把它看作是一個簡易的操作系統,因為像windows、linux等操作系統提供的文檔存儲、網路調用、繪製圖像等功能在瀏覽器中也同樣都可以得
  • input文本框圓角效果代碼實例:本章節分享一段代碼實例,它實現了將input文本框設置為圓角的功能。代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://w
  • 使用jquery實現的清空表單元素代碼實例:如果表單的元素較多的話,如果想情況以前填寫的內容可能有點耗費體力,不夠人性化,下麵就介紹一下如何利用jquery代碼實現快捷清除表單元素內容的功能,先看一段代碼實例: $('#theform')[0].reset(); 很朋友可能認為上面的代碼就完全實現我
  • js如何合併兩個數組:本章節介紹一下如何合併兩個數組,希望對大家有所幫助。實例代碼:實例一: var arrOne=["螞蟻部落","青島市南區",3]; var arrTwo=["分享交流","antzone",600]; console.log(arrOne.concat(arrTwo)); c
  • css3實現元素的伸縮效果代碼實例:本章節分享一段代碼實例,它利用css3實現了元素的伸縮效果。這裡為了進行演示,結合了javascript代碼。代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="aut
  • jquery實現的點擊可以展開摺疊的垂直導航菜單:本章節介紹一種比較常見的導航菜單是如何實現的,它具有垂直結構,點擊導航主標題可以展開或者摺疊二級菜單。代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="
  • js獲取地址欄的參數:通過url地址可以傳遞參數,下麵就是一段能夠實現此功能的代碼實例和和大家做一下分享,希望能夠給需要的朋友帶來一定的幫助。代碼如下: function getUrlParams(){ var search = window.location.search; // 寫入數據字典 v
  • 效果預覽:http://hovertree.com/code/texiao/ks63r6aq.htm 1 <!DOCTYPE html> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <title>超漂亮的HTML導航菜單CSS代碼
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...