您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Number search results on StartPage.com and other Ixquick sites - StartingPage.com and Ixquick.com
当前为
- // ==UserScript==
- // @name StartPage.com - Number Results
- // @namespace tag:r-a-y@gmx.com,2012:monkey
- // @description Number search results on StartPage.com and other Ixquick sites - StartingPage.com and Ixquick.com
- // @match https://*.startpage.com/*/search*
- // @author r-a-y
- // @version 1.1.4
- // @license GPL v3
- // ==/UserScript==
- var results = document.querySelectorAll( 'li.search-item' ), hasPagination = true, pageNumber,
- pagination, multiple, next, resultsNumber;
- if ( results.length ) {
- hasPagination = false;
- }
- // Sometimes Startpage uses pagination.
- if ( hasPagination ) {
- results = document.querySelectorAll( '.w-gl__result-title h3' );
- pageNumber = document.querySelector('.pagination .num--active').textContent;
- console.log(results);
- // If no pagination, calculate page number from prev/next links.
- } else {
- pagination = document.querySelectorAll('.pagination__link');
- multiple = pagination[1].value;
- next = pagination[1].value;
- // We're on the last page.
- if ( multiple === '-1' ) {
- multiple = pagination[0].value;
- }
- // Get number of results.
- if ( multiple % 20 === 0 ) {
- resultsNumber = 20;
- } else {
- resultsNumber = 10;
- }
- // Calculate the current page number.
- if ( next === '-1' ) {
- pageNumber = multiple / resultsNumber + 1;
- } else {
- pageNumber = next / resultsNumber - 1;
- }
- }
- // DOM inject.
- for ( i = 0, len = results.length; i < len; ++i ) {
- newSpan = document.createElement( "span" );
- newSpan.setAttribute( "style", "float:left; font-weight:600; font-size:1em; display:inline-block; margin-right:5px;" );
- if ( hasPagination ) {
- newContent = document.createTextNode( ( ( pageNumber - 1 ) * len + i + 1 ) + ". ");
- } else {
- newContent = document.createTextNode( ( pageNumber * resultsNumber + i + 1 ) + ". ");
- }
- newSpan.appendChild( newContent );
- results[i].insertBefore( newSpan, results[i].firstChild );
- }