Edit in JSFiddle

function log(arg) {
    $('<div>').text(arg).appendTo('body')
}

var fibGen = function *(a) {
    var q = 0, r = 1;
    while (true) {
        r += q;
        q = r - q;
        var injected = yield r;
        log('You injected: ' + injected);
    }
};

var fib = fibGen();
log(fib.next().value)
log(fib.next('a').value)
log(fib.next('b').value)
log(fib.next('c').value)
log(fib.next('d').value)