Allows to display torrent's poster image as preview on search page when hover over link
لا ينبغي أن لا يتم تثبيت هذا السكريت مباشرة. هو مكتبة لسكبتات لتشمل مع التوجيه الفوقية // @require https://update.sleazyfork.org/scripts/412272/853145/pornolab%20torrentPreview.js
// ==UserScript==
// @name pornolab torrentPreview
// @version 1.0.0
// @author ducklover
// @description Allows to display torrent's poster image as preview on search page when hover over link
// @copyright 2020, ducklover (https://openuserjs.org/users/ducklover)
// @include /^https?:\/\/pornolab\.net\/forum\/(tracker|viewforum).*/
// @license MIT
// @run-at document-end
// ==/UserScript==
function getPic(e) {
if (
(e.target.classList.contains("tLink") ||
e.target.classList.contains("tt-text")) &&
!e.target.querySelector(".customImg")
) {
let url =
"https://pornolab.net/forum" + e.target.getAttribute("href").slice(1);
let r = new XMLHttpRequest();
r.open("GET", url, false);
r.send();
let imgSrc = new DOMParser()
.parseFromString(r.responseText, "text/html")
.querySelector(".postImg").title;
let div = document.createElement("div");
div.style.cssText = `position: absolute;
width: 460px;
height: 300px;
left: 0;
z-index: 10;`;
e.clientY < 300 ? (div.style.bottom = "auto") : (div.style.bottom = "100%");
div.className = "customImg";
let img = document.createElement("img");
img.setAttribute("src", imgSrc);
img.style.cssText = `width: 100%;
height: 100%;
object-fit: contain;`;
div.appendChild(img);
e.target.style.position = "relative";
e.target.appendChild(div);
} else if (
(e.target.classList.contains("tLink") ||
e.target.classList.contains("tt-text")) &&
e.target.querySelector(".customImg")
) {
e.target.querySelector(".customImg").style.display = "block";
if (e.clientY < 300) {
e.target.querySelector(".customImg").style.bottom = "auto";
} else {
e.target.querySelector(".customImg").style.bottom = "100%";
}
}
}
function hidePic(e) {
if (
(e.target.classList.contains("tLink") ||
e.target.classList.contains("tt-text")) &&
e.target.querySelector(".customImg")
) {
e.target.querySelector(".customImg").style.display = "none";
}
}
window.addEventListener("mouseover", getPic);
window.addEventListener("mouseout", hidePic);