LargeBooru

Increases the thumbnail size for Danbooru

As of 2015-11-18. See the latest version.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name          LargeBooru
// @namespace     largebooru
// @version       1.03
// @description   Increases the thumbnail size for Danbooru
// @run-at        document-end
// @include       http://*.donmai.us/*
// @include       https://*.donmai.us/*
// @exclude       http://*.donmai.us/comments*
// @exclude       https://*.donmai.us/comments*
// ==/UserScript==

//----User defined variables----
var dimensions = 300
var gap = 10
//------------------------------

var db = dimensions + gap + "px";
var d = dimensions + "px";
var indexa = document.getElementsByClassName("post-preview");
var indexb = document.getElementsByTagName("img");

for (var x = 0; x < indexa.length; x++) {
    var Data = indexa[x];
    var Image = indexb[x];
    if (Image.id !== "image") {
        var ext = Data.getAttribute("data-file-ext");
        if (ext == "gif" || ext == "jpg" || ext == "png") {
            Image.setAttribute("src", Data.getAttribute("data-large-file-url"));
        } else if (ext == "webm" || ext == "mp4" || ext == "zip") {
            var Video = document.createElement("video");    
            Video.setAttribute("autoplay","autoplay");
//          Video.setAttribute("controls","controls");
//          Video.setAttribute("id","image");
            Video.setAttribute("loop","loop");
            var Source = "data-file-url";
            if (ext == "zip") Source = "data-large-file-url";
            Video.setAttribute("src",Data.getAttribute(Source));
            Video.setAttribute("height",Data.getAttribute("data-height"));
            Video.setAttribute("width",Data.getAttribute("data-width"));
            Video.volume = 0.0;
            Image.parentNode.insertBefore(Video, Image);
            Video.style.maxHeight = d;
            Video.style.maxWidth = d;
        } else {
            var width = Data.getAttribute("data-width");
            var height = Data.getAttribute("data-height");
            var denom = Math.max(width, height) / dimensions;
            var newwidth = Math.round(width / denom);
            var newheight = Math.round(height / denom);
            Image.style.width = newwidth + 'px';
            Image.style.height = newheight + 'px';
        }
        Data.style.height = db;
        Data.style.width = db;
        Data.style.margin = 0;
        Data.style.lineHeight = db;
        Image.style.maxHeight = d;
        Image.style.maxWidth = d;
    }
}