Size
3.1 KB
Version
1.0.1
Created
Mar 27, 2026
Updated
20 days ago
1// ==UserScript==
2// @name Linkvertise Wait Time Skipper
3// @description Automatically skips wait times on Linkvertise pages
4// @version 1.0.1
5// @match https://*.linkvertise.com/*
6// @icon https://linkvertise.com/favicon.ico
7// ==/UserScript==
8(function() {
9 'use strict';
10
11 // Function to skip wait time on Linkvertise
12 function skipWaitTime() {
13 console.log('Linkvertise Wait Time Skipper: Checking for wait time...');
14
15 // Look for the continue button
16 const continueButton = document.querySelector('[dusk="action-wall-continue-action-btn"] button');
17
18 // Look for free trial option
19 const freeTrialOption = Array.from(document.querySelectorAll('.membership-price__wrapper__duration'))
20 .find(el => el.textContent.includes('Trial') || el.textContent.includes('Free'));
21
22 // If free trial option exists, click on it
23 if (freeTrialOption) {
24 console.log('Linkvertise Wait Time Skipper: Found free trial option');
25 const trialButton = freeTrialOption.closest('[dusk="lv-lib-membership-price-plan-wrapper-btn"]');
26 if (trialButton) {
27 trialButton.click();
28 console.log('Linkvertise Wait Time Skipper: Selected free trial');
29 }
30 }
31
32 // If continue button exists, click it
33 if (continueButton) {
34 console.log('Linkvertise Wait Time Skipper: Found continue button');
35 setTimeout(() => {
36 continueButton.click();
37 console.log('Linkvertise Wait Time Skipper: Clicked continue button');
38 }, 1000);
39 } else {
40 // If no continue button, look for other ways to skip
41 console.log('Linkvertise Wait Time Skipper: Looking for alternative skip methods');
42
43 // Try to find and click any "Continue" or "Skip" buttons
44 const possibleButtons = document.querySelectorAll('button, a');
45 for (const button of possibleButtons) {
46 const buttonText = button.textContent.toLowerCase();
47 if (buttonText.includes('continue') || buttonText.includes('skip') ||
48 buttonText.includes('free') || buttonText.includes('trial')) {
49 console.log('Linkvertise Wait Time Skipper: Found potential skip button:', buttonText);
50 setTimeout(() => {
51 button.click();
52 console.log('Linkvertise Wait Time Skipper: Clicked button:', buttonText);
53 }, 1000);
54 break;
55 }
56 }
57 }
58 }
59
60 // Run immediately
61 skipWaitTime();
62
63 // Run again after a delay to catch dynamically loaded content
64 setTimeout(skipWaitTime, 3000);
65
66 // Observe DOM changes to catch dynamically added elements
67 const observer = new MutationObserver(mutations => {
68 mutations.forEach(mutation => {
69 if (mutation.addedNodes.length > 0) {
70 skipWaitTime();
71 }
72 });
73 });
74
75 observer.observe(document.body, {
76 childList: true,
77 subtree: true
78 });
79})();