您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Expand Bio sections automatically.
- // ==UserScript==
- // @name Geni Auto Expand Bio
- // @namespace 4525639+rautava@users.noreply.github.com
- // @version 1.5
- // @description Expand Bio sections automatically.
- // @author Tommi Rautava
- // @license CC0-1.0
- // @match https://www.geni.com/people/*
- // @icon https://www.google.com/s2/favicons?sz=64&domain=geni.com
- // @grant none
- // ==/UserScript==
- let LOOP_INTERVAL = 300;
- let MAX_LOOP_COUNT = 20;
- let loopCount = 0;
- function clickBioAnchor() {
- "use strict";
- let readMoreElem = document.querySelector('a.toggle_link[id^="bio_"]');
- if (readMoreElem) {
- readMoreElem.click();
- }
- }
- function clickToShowMoreChildren() {
- let moreChildrenXpath = '//tr[@id="family_handprint"]//span[@style="display: inline;" or not(@style)]/a[@href="#"]';
- let moreChildrenResult = document.evaluate(moreChildrenXpath, document, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null);
- let node;
- while (node = moreChildrenResult.iterateNext()) {
- node.click();
- }
- }
- function waitForBioAnchor(selector) {
- if (document.querySelector('a.toggle_link[id^="bio_"]')) {
- clickBioAnchor();
- } else {
- loopCount++;
- if (loopCount <= MAX_LOOP_COUNT) {
- setTimeout(waitForBioAnchor, LOOP_INTERVAL);
- } else {
- console.warn("Timeout");
- }
- }
- }
- (function () {
- waitForBioAnchor();
- clickToShowMoreChildren();
- })();