您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
yes
当前为
// ==UserScript== // @name Iwara Cuck // @namespace none // @version 1.0 // @description yes // @match https://www.iwara.tv/* // @grant GM_registerMenuCommand // @grant GM_unregisterMenuCommand // ==/UserScript== var storedUsernames = localStorage.getItem('usernames'); var usernames = storedUsernames ? JSON.parse(storedUsernames) : []; let iframe, a, b, c, d, targetSection, i, urlParams, currentIndex = 0, t = 3, filter = 1, Group = 1; let pageKey = `myData_${window.location.href}`; let url = window.location.href; const buttonStyles = ` background: rgba(255, 143, 143, 0.8); color: white; border: none; padding: 10px 15px; cursor: pointer; font-size: 16px; border-radius: 5px; transition: background 0.3s ease; `; const blackButton = ` background: rgba(100, 100, 100, 0.8); color: white; border: none; padding: 10px 15px; cursor: pointer; font-size: 16px; border-radius: 5px; transition: background 0.3s ease; `; const style = document.createElement('style'); style.innerHTML = ` video::-webkit-media-controls-panel { background: transparent !important; } `; document.head.appendChild(style); if (localStorage.getItem("t")) { t = parseInt(localStorage.getItem("t")); } if (localStorage.getItem("Filter")) { filter = parseInt(localStorage.getItem("Filter")); } if (localStorage.getItem("Group")) { Group = parseInt(localStorage.getItem("Group")); } function updateMenu() { GM_registerMenuCommand("Page Count: " + t, setT); GM_registerMenuCommand("Filter: " + filter, setFilter); GM_registerMenuCommand("Autoload: " + Group, setGroup); } function removeMenu() { GM_unregisterMenuCommand("Page Count: " + t); GM_unregisterMenuCommand("Filter: " + filter); GM_unregisterMenuCommand("Autoload: " + Group); } function setT() { let newT = prompt("Set t:", t); if (newT !== null) { removeMenu(); t = parseInt(newT); localStorage.setItem("t", t); updateMenu(); } } function setFilter() { if (filter === 1) { removeMenu(); filter = 0; localStorage.setItem("Filter", filter); updateMenu(); } else { removeMenu(); filter = 1; localStorage.setItem("Filter", filter); updateMenu(); } } function setGroup() { if (Group === 1) { removeMenu(); Group = 0; localStorage.setItem("Group", Group); updateMenu(); } else { removeMenu(); Group = 1; localStorage.setItem("Group", Group); updateMenu(); } } updateMenu(); function checkPagination() { pageKey = `myData_${window.location.href}`; var pagination = document.querySelector('.pagination ul.pagination__items'); if (pagination !== null) { console.log("Probably Working."); var parentDivs = document.querySelectorAll('.col-6.col-sm-4.col-md-3.page-videoList__item'); var usernameLinks = document.querySelectorAll('a.username'); if (filter === 1) { usernameLinks.forEach(function(usernameLink) { var button = document.createElement('button'); button.textContent = '-'; button.onclick = function() { var username = usernameLink.textContent; usernames.push(username); localStorage.setItem('usernames', JSON.stringify(usernames)); parentDivs.forEach(function(parentDiv) { var username = parentDiv.querySelector('a.username').textContent; if (usernames.includes(username)) { parentDiv.style.visibility = 'hidden'; parentDiv.style.position = 'absolute'; parentDiv.querySelector("div.videoTeaser__content > a").className = "hidden"; console.log(parentDiv.querySelector("div.videoTeaser__content > a").className); } }); }; usernameLink.parentNode.insertBefore(button, usernameLink.nextSibling); }); parentDivs.forEach(function(parentDiv) { var username = parentDiv.querySelector('a.username').textContent; if (usernames.includes(username)) { parentDiv.style.visibility = 'hidden'; parentDiv.style.position = 'absolute'; parentDiv.querySelector("div.videoTeaser__content > a").className = "hidden"; console.log(parentDiv.querySelector("div.videoTeaser__content > a").className); } }); }; var xOption = document.createElement('li'); xOption.className = 'pagination__item'; xOption.textContent = 'x'; pagination.appendChild(xOption); xOption.onclick = function() { localStorage.removeItem('usernames'); console.log('Stored usernames cleared'); usernames = []; }; } } function check(iframe) { return new Promise((resolve) => { const intervalId = setInterval(() => { try { if (iframe.contentDocument.querySelectorAll("div.byline button")[0]) { clearInterval(intervalId); resolve(true); } } catch (e) { } }, 500); }); } function tree() { let iframe = document.createElement('iframe'); if (!window.frameElement) { urlParams = new URLSearchParams(window.location.search); let sortParam = urlParams.get('sort'); a = parseInt(urlParams.get('page')); if (sortParam) { (async function () { if (t > 1) { for (i = 1; i <= t - 1; i++) { urlParams.set('page', a + i); console.log(a + i); if (iframe && typeof iframe.src !== "undefined") { iframe.style.visibility = 'hidden'; iframe.src = `${window.location.pathname}?${urlParams.toString()}`; document.body.appendChild(iframe); try { await check(iframe); let colElements = iframe.contentDocument?.querySelectorAll("div.col-6"); if (colElements && colElements.length > 0) { targetSection = document.querySelector("section.content div.col-12 div:nth-child(1)"); colElements.forEach(colElement => { targetSection.appendChild(colElement); }); } } catch (e) { console.error("Error accessing iframe content:", e); } finally { iframe.remove(); console.log("Iframe processed and removed."); }; } } } let button = document.createElement('button'); button.className = 'plusten'; button.innerHTML = '+ ' + t; button.addEventListener('click', function() { urlParams = new URLSearchParams(window.location.search); b = parseInt(urlParams.get('page')) + t || t; urlParams.set('page', b); window.location.href = `${window.location.pathname}?${urlParams.toString()}`; }) targetSection.appendChild(button); if (Group === 1) { loads(); }; })(); } } } const button = document.createElement('a'); const originalPushState = history.pushState; button.innerHTML = '+'; button.id = 'fer'; button.class = 'header__link'; const timer = setInterval(() => { if (document.querySelector("div.col-6.col-sm-4")) { checkPagination(); document.querySelector("div.header__content__items__right").appendChild(button); clearInterval(timer); } }, 100); history.pushState = function() { if (document.querySelector("#fer")) { document.querySelector("#fer").remove(); }; const timer = setInterval(() => { if (document.querySelector("div.col-6.col-sm-4")) { checkPagination(); document.querySelector("div.header__content__items__right").appendChild(button); clearInterval(timer); } }, 100); return originalPushState.apply(this, arguments); }; button.addEventListener('click', loads); function loads() { if (localStorage.getItem(pageKey)) { currentIndex = parseInt(localStorage.getItem(pageKey)); console.log(pageKey); } else { currentIndex = 0; } const videoLinks = document.querySelectorAll('a.videoTeaser__title'); document.querySelector("body").innerHTML = ``; let button = document.createElement('button'); button.className = 'plusten'; button.innerHTML = '+' + t; button.addEventListener('click', function() { urlParams = new URLSearchParams(window.location.search); b = parseInt(urlParams.get('page')) + t || t; urlParams.set('page', b); if (filter === 1) { //localStorage.clear("usernames"); } window.location.href = `${window.location.pathname}?${urlParams.toString()}`; }) const videos = document.createElement('div'); videos.className = 'videos'; videoLinks.forEach((link, index) => { iframe = document.createElement('iframe'); iframe.src = link.href; iframe.style.display = 'none'; document.body.appendChild(iframe); }); const framechk = setInterval(() => { if (document.querySelectorAll("iframe")[videoLinks.length - 1].contentDocument.querySelector('video')) { const videoLinks = document.querySelectorAll("iframe"); let videos = []; for (let i = 0; i < videoLinks.length; i++) { let iframe = videoLinks[i]; let auth = iframe.contentDocument?.querySelector("a.username div"); let videoElement = iframe.contentDocument?.querySelector('video'); if (videoElement) { let author = auth.innerText; let videoSrc = videoElement.src; videos.push({ author, videoSrc }); } } const container = document.createElement('div'); const videoPlayer = document.createElement('video'); const nextBtn = document.createElement('button'); const prevBtn = document.createElement('button'); const rmvUser = document.createElement('button'); const controlsContainer = document.createElement('div'); controlsContainer.style.cssText = ` position: fixed; top: 10px; right: 10px; display: flex; gap: 10px; z-index: 1000; `; videoPlayer.style.width = '100%'; videoPlayer.controls = true; if (videos.length > 0) { if (currentIndex > videos.length) { currentIndex = 0; } videoPlayer.src = videos[currentIndex].videoSrc; console.log(videos[currentIndex].author); } rmvUser.innerText = '⃠ '; nextBtn.innerText = 'Next'; prevBtn.innerText = 'Previous'; nextBtn.style.margin = '10px'; prevBtn.style.margin = '10px'; nextBtn.addEventListener('click', () => { if (currentIndex < videos.length - 1) { currentIndex++; localStorage.setItem(pageKey, currentIndex); videoPlayer.src = videos[currentIndex].videoSrc; videoPlayer.play(); } }); prevBtn.addEventListener('click', () => { if (currentIndex > 0) { currentIndex--; videoPlayer.src = videos[currentIndex].videoSrc; localStorage.setItem(pageKey, currentIndex); videoPlayer.play(); } }); document.body.style.cssText = ` overflow:hidden `; rmvUser.onclick = function() { let username = videos[currentIndex].author; usernames.push(username); localStorage.setItem('usernames', JSON.stringify(usernames)); videos = videos.filter(video => video.author !== username); videoPlayer.src = videos[currentIndex].videoSrc; } nextBtn.style.cssText = buttonStyles; prevBtn.style.cssText = buttonStyles; button.style.cssText = blackButton; rmvUser.style.cssText = blackButton; controlsContainer.appendChild(rmvUser); controlsContainer.appendChild(button); controlsContainer.appendChild(prevBtn); controlsContainer.appendChild(nextBtn); document.body.appendChild(controlsContainer); container.appendChild(videoPlayer); document.body.appendChild(container); document.querySelectorAll('iframe').forEach(iframe => iframe.remove()); clearInterval(framechk); } }, 5000); }; const currentUrl = window.location.href; const domain = window.location.hostname; const storageKey = `lastVisited_${domain}`; const lastVisited = localStorage.getItem(storageKey); localStorage.setItem(storageKey, currentUrl); if (lastVisited && lastVisited !== currentUrl) { const banner = document.createElement('div'); banner.textContent = `Click here to return to your last visited page.`; banner.style.position = 'fixed'; banner.style.bottom = '10px'; banner.style.left = '50%'; banner.style.transform = 'translateX(-50%)'; banner.style.backgroundColor = 'rgba(0, 0, 0, 0.8)'; banner.style.color = 'white'; banner.style.padding = '10px 20px'; banner.style.borderRadius = '5px'; banner.style.cursor = 'pointer'; banner.style.zIndex = '10000'; banner.style.fontSize = '14px'; banner.style.transition = 'opacity 0.5s ease-in-out'; banner.onclick = () => { localStorage.removeItem(storageKey); window.location.href = lastVisited; }; document.body.appendChild(banner); // Auto-hide after 5 seconds setTimeout(() => { banner.style.opacity = '0'; setTimeout(() => banner.remove(), 500); }, 5000); } tree();