<html>
<head>
<title>Manual Test for Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page</title>
<style>
li { padding-bottom: 12px; }
</style>
</head>
<body>
<h3>Manual Test for <a href="https://bugs.webkit.org/show_bug.cgi?id=13067">Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page</a></h3>
<div>
<p>Instructions</p>
<ol>
<li>Click link to <a href="resources/hash-ref-test.html" target="_blank">open test page in new window</a>.</li>
<li>Set hash ref to "#div5" on the URL and hit <kbd>Enter</kbd>.<br>  This should take you to the top of the div5 box <em>without</em> reloading the page.</li>
<li>Set hash ref to "#" on the URL and hit <kbd>Enter</kbd>.<br>  This should take you to the top of the page <em>without</em> reloading.</li>
<li>Set hash ref to "#div3" on the URL and hit <kbd>Enter</kbd>.<br>  This should take you to the top of the div3 box <em>without</em> reloading.</li>
<li>Hit <kbd>Enter</kbd> in the address bar without chainging the "#div3" hash.<br>  This <em>should</em> reload the page.</li>
<li>Set hash ref to "#" on the URL and hit <kbd>Enter</kbd>.<br>  This should take you to the top of the page <em>without</em> reloading.</li>
<li>Hit <kbd>Enter</kbd> in the address bar without chainging the "#" hash.<br>  This <em>should</em> reload the page.</li>
<li>Delete the hash ref on the URL and hit <kbd>Enter</kbd>.<br>  This <em>should</em> reload the page.</li>
<li>Go back in history 5 times to the first URL.<br>  <em>None</em> of the pages should be reloaded.</li>
<li>Go forward in history 5 times to the last URL.<br>  <em>None</em> of the pages should be reloaded.</li>
</div>
</body>
</html>
