Option to wrap the element in the anchor link.
Pick window.location.hash just once.

Optimizes runtime and prevents multiple animations queueing up if the hash
changes during the initialization.
Create functional numbered hashes for empty elements.