index now works in reverse when passed a selector or undefined. fixes #3971