Javascript macro>

by Paulpro

HTML

<span class="macro linked-img" data-option="['http://dummyimage.com/100x100/000/fff', 'An Image!!!']">

JavaScript

(function(){
    
    var macros = {'linked-img': '<a href="#1" target="_blank"><img src="#1" alt="#2" /></a>'};
    
    var els = document.getElementsByClassName('macro');
    for(var i = 0; i < els.length; i++){
        var tmp = els[i].parentNode.cloneNode();
        var x = eval(els[i].getAttribute('data-option'));
        var html = macros[els[i].className.substring(6)];
        for(var j = 1; j <= x.length; j++)
            html = html.replace(new RegExp('#'+j,'g'), x[j - 1]);
        tmp.innerHTML = html;
        els[i].parentNode.replaceChild(tmp.childNodes[0], els[i]);
        delete tmp;
    }
})();