I've included some sample code below. If I scroll down a few items in a multi select box, then reset the ScrollTop to zero, the list resets to the first element correctly. However, if you then click the scroll down arrow, it will jump to the next value before the scrolltop reset. Eg. Scroll down 3 clicks to 'Test 4', click 'reset', click down arrow once. First value displayed is 'Test 5' instead of 'Test 2'.
<SELECT name="test" multiple size="4">
<option>Test 1
<option>Test 2
<option>Test 3
<option>Test 4
<option>Test 5
<option>Test 6
<option>Test 7
<option>Test 8
<option>Test 9
</SELECT>
<a href="javascript:void(0);" onclick="document.all['test'].scrollTop=0;">reset</a>
<SELECT name="test" multiple size="4">
<option>Test 1
<option>Test 2
<option>Test 3
<option>Test 4
<option>Test 5
<option>Test 6
<option>Test 7
<option>Test 8
<option>Test 9
</SELECT>
<a href="javascript:void(0);" onclick="document.all['test'].scrollTop=0;">reset</a>