您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Preview screenshots straight from the prods search by hovering over links.
- // ==UserScript==
- // @name Pouet Plus
- // @namespace PP
- // @description Preview screenshots straight from the prods search by hovering over links.
- // @version 1.1.0
- // @include http://pouet.net/*
- // @include http://www.pouet.net/*
- // @grant none
- // ==/UserScript==
- // Don't use this, prodScreenshot.user.js is better!
- var bg_color = "#EAEAEA";
- var border_color = "#D5D5D5";
- var font_color = "#000000";
- var font_face = "tahoma";
- var font_size = "11px";
- // I stole this hover code from somewhere else but forgot to credit it - sorry!
- function locate(event) {
- var posx, posy;
- var d = find_div();
- if (d) {
- posx = event.clientX + window.pageXOffset;
- posy = event.clientY + window.pageYOffset;
- d.style.top = (posy - 23) + "px";
- d.style.left = (posx + 15) + "px";
- }
- }
- function find_div() {
- return document.getElementById("link_tt");
- }
- function setImageSource(tt_image, demo_num, ext) {
- // Used to work:
- //tt_image.src = "screenshots/"+demo_num+"."+ext;
- tt_image.src = "http://www.pouet.net/content/screenshots/"+demo_num+"."+ext;
- }
- function addImage(tt_image, tt_div) {
- tt_div.innerHTML = "";
- tt_div.appendChild(tt_image);
- }
- function create_div(event, elem) {
- var tt_div = document.createElement("div");
- tt_div.setAttribute("id", "link_tt");
- tt_div.setAttribute("style", "background:" + bg_color + ";border:1px solid " + border_color + ";padding:2px;color:" + font_color + ";font-family:" + font_face + ";font-size:" + font_size + ";position:absolute;z-index:1000;");
- var demo_num = elem.href.replace(/.*?which=([0-9]*).*/, '$1');
- var tt_image = new Image();
- setImageSource(tt_image, demo_num, "jpg");
- tryOtherExtensionsIfNeeded(tt_div, tt_image, demo_num, ["gif", "png"]);
- addImage(tt_image, tt_div);
- tt_div.style.display = 'none';
- document.body.appendChild(tt_div);
- locate(event);
- }
- function tryOtherExtensionsIfNeeded(tt_div, tt_image, demo_num, imageTypes) {
- var fired = false;
- tt_image.addEventListener("error", function() {
- if (fired) {
- return;
- }
- fired = true;
- if (imageTypes.length == 0) {
- GM_log("We have run out of image types to try!");
- } else {
- var ext = imageTypes.pop();
- // It seems just updating the src was enough to unregister my error event listener (Chrome 32), so now I am going to create and replace the whole image element.
- tt_image = new Image();
- setImageSource(tt_image, demo_num, ext);
- addImage(tt_image, tt_div);
- tryOtherExtensionsIfNeeded(tt_div, tt_image, demo_num, imageTypes.slice(0));
- }
- }, false);
- tt_image.addEventListener("load", function() {
- tt_div.style.display = '';
- }, false);
- }
- function kill_window() {
- var div = find_div();
- if (div) {
- div.parentNode.removeChild(div);
- }
- }
- var timer = null;
- function resetTimeout(fn) {
- if (timer) {
- clearTimeout(timer);
- timer = null;
- }
- if (fn) {
- timer = setTimeout(fn, 300);
- }
- }
- function create_event(elem) {
- elem.addEventListener("mouseover", function(event) { resetTimeout(function() { create_div(event, elem); }); }, false);
- elem.addEventListener("mouseout", function() { resetTimeout(null); kill_window(); }, false);
- elem.addEventListener("mousemove", function(event) { locate(event); }, true);
- }
- var links = document.getElementsByTagName("a");
- for (i = 0; i < links.length; i++) {
- if (
- links[i].href.indexOf("/prod.php?which=")>=0 // Yes if this links points to a prod.
- && links[i].href.indexOf("&howmanycomments=")==-1 // But not if it's pointing to a specific comments page.
- ) {
- create_event(links[i]);
- }
- }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址