<HTML>
<Head>
<SCRIPT>
Function restore (){
VaR S = Document. Cookie;
VaR A = S. Split (";");
VaR B, r = "";
For (VAR I = 0; I <A. length; I ++ ){
B = A [I]. Split ("= ");
If (B [0] = "S") {r = B [1]; break ;}
}
If (R! = ""){
A = R. Split ("-");
VaR sel = Document. form1.sel;
Sel. scrolltop = A [0]
Sel. selectedindex = A [1];
}
}
Function doit (){
VaR sel = Document. form1.sel;
Document. Cookie = "s =" + SEL. scrolltop + "-" + SEL. selectedindex;
}
</SCRIPT>
</Head>
<Body onload = "Restore ();">
<Form name = "form1">
<Select name = "Sel" size = "5" multiple = "multiple" onchange = "doit ();">
<Option> 00000 </option>
<Option> 00001 </option>
<Option> 00002 </option>
<Option> 00003 </option>
<Option> 00004 </option>
<Option> 00005 </option>
<Option> 00006 </option>
<Option selected = "selected"> 00007 </option>
<Option> 00008 </option>
<Option> 00009 </option>
<Option> 00010 </option>
<Option> 00011 </option>
<Option> 00012 </option>
<Option> 00013 </option>
</SELECT>
<Form>
</Body>
</Html>
Reference from: