It's Not Important

At least part of the world will became less important now.

目前為 2016-01-30 提交的版本,檢視 最新版本

// ==UserScript==
// @name         It's Not Important
// @namespace    lainscripts_it_is_not_important
// @version      0.9
// @description  At least part of the world will became less important now.
// @author       lainverse
// @match        *://*/*
// @grant        none
// ==/UserScript==
/* jshint -W097 */
'use strict';

var imptt = /((display|(margin|padding)(-top|-bottom)?):[^;!]*)!important/g;

function unimportanter(el) {
    var si = el.getAttribute('style'), so = si.replace(imptt, function(str,grp){return grp});
    el.setAttribute('style',so);
    return (si != so)?1:0;
}

function logger(c) {
    if (c) console.log('Now '+c.toString()+' element'+(c>1?'s':'')+' on the page '+(c>1?'are':'is')+' less important!');
}

(function(){
    var c = 0, imp = document.querySelectorAll('[style*="!important"]'), i = imp.length;
    while(i--)
        c+= unimportanter(imp[i]);
    logger(c);
})();

(function(){
    var observer = new MutationObserver(function(mutations) {
        setTimeout(function(m){
            var i = m.length, c = 0;
            while(i--) if (m[i].target.style.cssText.indexOf('!') > -1)
                c+=unimportanter(m[i].target);
            logger(c);
        },0,mutations);
    });
    observer.observe(document.body, { attributes : true, attributeFilter : ['style'], subtree : true });
})();