also `this.$window` doesn't make much sense if the target isn't the window… should probably rename that to `this.$target`