Board Thread:Wikia Discussion/@comment-26091666-20160125084257/@comment-26154973-20160220030217

Interfacing with tabber is certainly better. This one works in tampermonkey:

(function(mw, $) {   "use strict";    $(document).ready(function {

if (typeof(Storage) === "undefined") { return; }

var ToggleStorage = function(property, property_default) { if (!localStorage[property]) { localStorage[property] = property_default; }           return { toggle: function { localStorage[property] = localStorage[property] === "show" ? "hide" : "show"; },               on: function { return localStorage[property] === "show"; }           };        }

function update(toggle_element, toggle) { var property = toggle_element.data("target") || "default", property_default = toggle_element.data("default") || "show", target = "toggle-target-" + property, target_class = "." + target, toggleStorage = ToggleStorage(target, property_default); if (toggle) { toggleStorage.toggle; }           if (toggleStorage.on) { $(".toggle-show").show; $(".toggle-hide").hide; $(target_class).show; } else { $(".toggle-show").hide; $(".toggle-hide").show; $(target_class).hide; }       }

function updateContent { $(".toggle").each(function {               var toggle_element = $(this);                toggle_element.show;                update(toggle_element);                toggle_element.off("click");                toggle_element.click(function { update(toggle_element, true); });           });        }

updateContent; mw.hook("wikipage.content").add(updateContent);

}); }(mediaWiki, jQuery));