window.location is of type Location while .attr('data-href') returns a string, so you have to assign it to window.location.href which is of string type too. For that replace your following line:
window.location = $link.attr('data-href');
for this one:
window.location.href = $link.attr('data-href');