DOM mutator for A/B experiments.
npm i --save mutate-dom
The HTML to mutate.
<div class="user">
<div class="name">John</div>
<div class="ava-container">
<img src="http://api.randomuser.me/portraits/thumb/men/39.jpg"/>
</div>
</div>
The code that mutates the HTML.
var mu = require('mutate-dom');
var mutator = require('mutate-dom').mutator;
mu.addClass = mutator(function(el, newClass) {
$(el).addClass(newClass);
});
mu.src = mutator(function(el, src) {
$(el).attr('src', src);
});
mu({
'.user': {
'.name': 'Bill',
'.hobbies': mu.slice(0, 1, 'football'),
'.ava-container': [{
img: mu.src('http://api.randomuser.me/portraits/thumb/men/59.jpg')
},
mu.addClass('awesome-ava-container')
]
}
});
MIT