Test of IE's window.location.href oddness with bookmarks

The Problem:

When navigating between named anchors in IE, the window.location object changes to reflect the change in the URL. This is correct. However, the window.location object should also change when you use the back or forward buttons, or the history.back() and history.forward() methods, to move between these anchors, and in IE 6.0 and IE 6.1, it does not.

The Test:

  1. Click on this link back up to the problem description, and note that the URL changes.
  2. Click on this link to the dummy text, and note that the URL changes again.
  3. Click on this link to show the current window.location.href.
  4. Click on this link to navigate away from the named anchor, or use the back button in your browser. The URL in the address bar will change.
  5. Click on this link to show the new window.location.href. It should match the URL in the address bar, but in IE6, it does not.

The Code

The anchor links:

<a href="#anchor">the link</a>

The location alert box

<a href="javascript:alert('window.location.href='+window.location.href+'\ndocument.location.href='+document.location.href)>show me</a>

The back link

<a href="javascript:history.back()>go back</a>

If you know of a way around this issue, please send it to anchor test @at@ isaacschlueter .dot. com and I will publicly congratulate your inventiveness.

The dummy text

This text is here to provide something to scroll past.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum eget sapien. Fusce aliquam vestibulum sapien. Vivamus justo. Aliquam aliquet eros in ante. Aliquam vehicula justo ac ante. Morbi posuere nonummy metus. Nunc vehicula. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Cras varius venenatis ante. Mauris eget diam id lectus vehicula hendrerit.

Praesent malesuada dolor id leo. Vestibulum vel mauris id ligula venenatis mollis. Ut facilisis tortor quis sapien. Vestibulum pretium pede at velit. Cras tellus mauris, euismod adipiscing, molestie nec, consectetuer sed, nibh. Nullam aliquet ultricies pede. Mauris vehicula vulputate lacus. Etiam accumsan mattis felis. Duis quis wisi. Fusce auctor est ac velit. Etiam eleifend ullamcorper quam. Morbi justo. Nulla sit amet dui. Morbi ultrices egestas odio. Morbi vitae nisl at diam condimentum vestibulum. Aliquam nisl. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Quisque accumsan risus at odio hendrerit tincidunt. Quisque condimentum purus at ligula. Maecenas neque.

Ut mauris felis, bibendum et, dictum quis, adipiscing et, massa. Cras sodales euismod sem. Aliquam viverra est ut wisi. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras sed lorem a orci nonummy sollicitudin. In at urna ac risus volutpat volutpat. Maecenas enim magna, molestie ut, feugiat posuere, ullamcorper nec, velit. Proin imperdiet, lorem ac elementum ultricies, orci est hendrerit nunc, id pharetra nibh pede sit amet ligula. In pretium felis. Suspendisse neque pede, iaculis eu, cursus porttitor, commodo at, enim. Aliquam erat volutpat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nulla quam nibh, rutrum aliquet, lobortis ut, nonummy in, elit. Nulla facilisi. Donec odio. Sed aliquam lorem in velit.

Sed wisi. Donec eget nisl. Sed consectetuer. Etiam vestibulum venenatis orci. Nullam eget justo quis urna dapibus lobortis. Suspendisse risus neque, gravida eu, ultrices mattis, tincidunt ut, arcu. Nam molestie. Pellentesque pellentesque. Ut imperdiet fermentum mauris. Fusce vehicula est in augue.

Donec lectus arcu, pulvinar ac, sollicitudin ut, congue vel, mi. In vel nulla non orci elementum porta. Nulla vel wisi. Donec in augue. Aenean adipiscing nulla et ipsum. Ut nec lectus. Mauris quis sapien ut lectus fringilla auctor. Nam hendrerit. Praesent sodales, erat tempus eleifend fermentum, ligula nunc semper enim, et euismod velit ligula nec mi. Morbi vulputate adipiscing felis. Quisque non odio. Vivamus cursus tellus eu orci. Phasellus quis urna nec lectus dapibus facilisis. Aenean nunc. Ut dignissim massa non augue. Cras iaculis rhoncus velit.

Aliquam in neque et wisi pharetra porta. Donec egestas ultricies dolor. Phasellus scelerisque. Donec in wisi quis velit porttitor cursus. Aliquam lorem lorem, tristique vitae, vestibulum a, interdum et, turpis. Phasellus ultricies. Aliquam erat volutpat. Proin a justo. Curabitur aliquam faucibus arcu. Integer sagittis nulla. Fusce nibh.

Sed diam metus, viverra ac, laoreet quis, luctus at, orci. Vivamus eu orci. Maecenas vel arcu. Aenean enim tellus, egestas sed, nonummy eu, dictum semper, odio. Cras at erat ac elit consequat consequat. Suspendisse sit amet dui eget eros iaculis placerat. In eros sem, malesuada eu, scelerisque eu, pulvinar ac, metus. In odio. Donec dapibus volutpat elit. Nunc sollicitudin euismod diam. Morbi risus urna, commodo ut, ultrices quis, suscipit at, augue. Nam ac sapien. Duis gravida leo sit amet pede. Suspendisse potenti. Duis libero elit, aliquam sit amet, vulputate vitae, aliquet vitae, nulla. Phasellus ligula nibh, mattis euismod, viverra non, pretium nec, dui. Aliquam nisl quam, sollicitudin et, sollicitudin nec, iaculis eu, mauris. Morbi lacinia adipiscing leo. Fusce interdum quam in mi. Nullam bibendum mollis magna.

Etiam leo lorem, varius eu, suscipit sit amet, adipiscing id, nisl. Donec lobortis. Morbi ac massa quis urna nonummy posuere. Suspendisse potenti. Sed est nunc, lobortis posuere, cursus non, aliquet ac, mi. Mauris nibh diam, convallis sed, tempor ac, gravida dignissim, libero. Vivamus elementum fringilla leo. Aliquam erat volutpat. Donec et lectus at risus volutpat pellentesque. Donec consequat. Cras luctus accumsan mi. Sed sed nibh. Maecenas et lorem ut leo volutpat ornare. Duis nulla ipsum, commodo eleifend, eleifend sit amet, blandit vel, neque. Aliquam varius ultrices enim. Aliquam iaculis mauris ut enim.

Aenean elit enim, viverra eu, tincidunt vel, pulvinar feugiat, nunc. Maecenas et arcu at nibh elementum laoreet. Vivamus congue, lorem nec bibendum aliquam, arcu augue lobortis augue, vel imperdiet nisl eros id mauris. Ut venenatis. Nulla facilisi. Integer ullamcorper condimentum neque. Quisque ac enim eget elit consectetuer dapibus. Nam dapibus metus. Cras condimentum consectetuer neque. Aliquam hendrerit. Etiam ornare ligula sit amet velit.

Nulla odio. Nulla faucibus. Pellentesque wisi tellus, sodales non, mattis vel, blandit eu, turpis. Nullam orci. Aenean volutpat sollicitudin elit. In nulla ipsum, scelerisque ut, fringilla condimentum, vehicula ornare, ante. Praesent accumsan ipsum nec velit. Donec dolor tellus, tristique ut, imperdiet sed, dignissim vel, mi. Suspendisse rutrum. Vivamus ac libero sit amet turpis euismod mattis. Fusce eros magna, rhoncus sed, mollis eget, aliquam eget, est. Mauris quis magna id mauris dapibus aliquam. Phasellus sit amet sem. Cras ullamcorper libero et ipsum. Sed mauris lacus, hendrerit vehicula, elementum et, laoreet id, justo. Donec pede sapien, fringilla ac, convallis at, tincidunt et, sapien. Aliquam pellentesque leo in magna.

The Bottom

Now you've scrolled down to the bottom. Now scroll back up to the top to continue the test, or just use this link to show the current window.location.href, and then this link to navigate away from the named anchor.

Now for some more dummy text to allow you to scroll down here.

But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?

On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains.

Ut mauris felis, bibendum et, dictum quis, adipiscing et, massa. Cras sodales euismod sem. Aliquam viverra est ut wisi. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras sed lorem a orci nonummy sollicitudin. In at urna ac risus volutpat volutpat. Maecenas enim magna, molestie ut, feugiat posuere, ullamcorper nec, velit. Proin imperdiet, lorem ac elementum ultricies, orci est hendrerit nunc, id pharetra nibh pede sit amet ligula. In pretium felis. Suspendisse neque pede, iaculis eu, cursus porttitor, commodo at, enim. Aliquam erat volutpat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nulla quam nibh, rutrum aliquet, lobortis ut, nonummy in, elit. Nulla facilisi. Donec odio. Sed aliquam lorem in velit.

Sed wisi. Donec eget nisl. Sed consectetuer. Etiam vestibulum venenatis orci. Nullam eget justo quis urna dapibus lobortis. Suspendisse risus neque, gravida eu, ultrices mattis, tincidunt ut, arcu. Nam molestie. Pellentesque pellentesque. Ut imperdiet fermentum mauris. Fusce vehicula est in augue.

Donec lectus arcu, pulvinar ac, sollicitudin ut, congue vel, mi. In vel nulla non orci elementum porta. Nulla vel wisi. Donec in augue. Aenean adipiscing nulla et ipsum. Ut nec lectus. Mauris quis sapien ut lectus fringilla auctor. Nam hendrerit. Praesent sodales, erat tempus eleifend fermentum, ligula nunc semper enim, et euismod velit ligula nec mi. Morbi vulputate adipiscing felis. Quisque non odio. Vivamus cursus tellus eu orci. Phasellus quis urna nec lectus dapibus facilisis. Aenean nunc. Ut dignissim massa non augue. Cras iaculis rhoncus velit.

Aliquam in neque et wisi pharetra porta. Donec egestas ultricies dolor. Phasellus scelerisque. Donec in wisi quis velit porttitor cursus. Aliquam lorem lorem, tristique vitae, vestibulum a, interdum et, turpis. Phasellus ultricies. Aliquam erat volutpat. Proin a justo. Curabitur aliquam faucibus arcu. Integer sagittis nulla. Fusce nibh.

Sed diam metus, viverra ac, laoreet quis, luctus at, orci. Vivamus eu orci. Maecenas vel arcu. Aenean enim tellus, egestas sed, nonummy eu, dictum semper, odio. Cras at erat ac elit consequat consequat. Suspendisse sit amet dui eget eros iaculis placerat. In eros sem, malesuada eu, scelerisque eu, pulvinar ac, metus. In odio. Donec dapibus volutpat elit. Nunc sollicitudin euismod diam. Morbi risus urna, commodo ut, ultrices quis, suscipit at, augue. Nam ac sapien. Duis gravida leo sit amet pede. Suspendisse potenti. Duis libero elit, aliquam sit amet, vulputate vitae, aliquet vitae, nulla. Phasellus ligula nibh, mattis euismod, viverra non, pretium nec, dui. Aliquam nisl quam, sollicitudin et, sollicitudin nec, iaculis eu, mauris. Morbi lacinia adipiscing leo. Fusce interdum quam in mi. Nullam bibendum mollis magna.

Etiam leo lorem, varius eu, suscipit sit amet, adipiscing id, nisl. Donec lobortis. Morbi ac massa quis urna nonummy posuere. Suspendisse potenti. Sed est nunc, lobortis posuere, cursus non, aliquet ac, mi. Mauris nibh diam, convallis sed, tempor ac, gravida dignissim, libero. Vivamus elementum fringilla leo. Aliquam erat volutpat. Donec et lectus at risus volutpat pellentesque. Donec consequat. Cras luctus accumsan mi. Sed sed nibh. Maecenas et lorem ut leo volutpat ornare. Duis nulla ipsum, commodo eleifend, eleifend sit amet, blandit vel, neque. Aliquam varius ultrices enim. Aliquam iaculis mauris ut enim.

Aenean elit enim, viverra eu, tincidunt vel, pulvinar feugiat, nunc. Maecenas et arcu at nibh elementum laoreet. Vivamus congue, lorem nec bibendum aliquam, arcu augue lobortis augue, vel imperdiet nisl eros id mauris. Ut venenatis. Nulla facilisi. Integer ullamcorper condimentum neque. Quisque ac enim eget elit consectetuer dapibus. Nam dapibus metus. Cras condimentum consectetuer neque. Aliquam hendrerit. Etiam ornare ligula sit amet velit.

Nulla odio. Nulla faucibus. Pellentesque wisi tellus, sodales non, mattis vel, blandit eu, turpis. Nullam orci. Aenean volutpat sollicitudin elit. In nulla ipsum, scelerisque ut, fringilla condimentum, vehicula ornare, ante. Praesent accumsan ipsum nec velit. Donec dolor tellus, tristique ut, imperdiet sed, dignissim vel, mi. Suspendisse rutrum. Vivamus ac libero sit amet turpis euismod mattis. Fusce eros magna, rhoncus sed, mollis eget, aliquam eget, est. Mauris quis magna id mauris dapibus aliquam. Phasellus sit amet sem. Cras ullamcorper libero et ipsum. Sed mauris lacus, hendrerit vehicula, elementum et, laoreet id, justo. Donec pede sapien, fringilla ac, convallis at, tincidunt et, sapien. Aliquam pellentesque leo in magna.