我花了点时间为你写了段代码,希望对你的所帮助!<select name="select" style="width:100" size="8" onmousemove="ShowHint()">
<option>12345678901234567890</option>
<option>中华人民共和国</option>
<option>四川省成都市高新区</option>
<option>刻骨铭心 测试测试</option>
<option>测试测试一二三四五六七八九</option>
</select><script language="JavaScript">
var oPopup = window.createPopup()
function ShowHint(){
var oSel = event.srcElement
var iCount = oSel.options.length
var iIndex = parseInt(event.offsetY / 15)
if (iIndex > iCount - 1) iIndex = iCount - 1
oSel.selectedIndex = iIndex
sText = oSel.options[oSel.selectedIndex].text
oPopup.document.body.innerHTML = '<div title="' + sText + '" style="cursor:default">0</div>'
oPopup.show(event.offsetX+2, event.offsetY+2, 1, 1, event.srcElement)
}
</script>
<option>12345678901234567890</option>
<option>中华人民共和国</option>
<option>四川省成都市高新区</option>
<option>刻骨铭心 测试测试</option>
<option>测试测试一二三四五六七八九</option>
</select><script language="JavaScript">
var oPopup = window.createPopup()
function ShowHint(){
var oSel = event.srcElement
var iCount = oSel.options.length
var iIndex = parseInt(event.offsetY / 15)
if (iIndex > iCount - 1) iIndex = iCount - 1
oSel.selectedIndex = iIndex
sText = oSel.options[oSel.selectedIndex].text
oPopup.document.body.innerHTML = '<div title="' + sText + '" style="cursor:default">0</div>'
oPopup.show(event.offsetX+2, event.offsetY+2, 1, 1, event.srcElement)
}
</script>
SELECT控件的系统优先级太高(相当于一个窗口对象),一般的层是覆盖不了的,只有在层中放入一个IFRAME,再设置IFRAME透明。
我知道你想要的是什么效果,但是不能接收鼠标事件也没办法了。
<HEAD>
<TITLE> emu </TITLE>
</HEAD>
<BODY>
<span id=titleSpan style="position:absolute;display:none">
<select style="margin-left:-2;margin-top:-2;margin-bottom:-2;margin-right:-18;background-color:#FFFFEE" id=titleSelect ><option>asdfsdf</select>
</span><select style="width:70" onmouseover="show()" onmouseout="hide()">
<option>sdhfdfjytujktyuihgjjh
<option>asdgdfhfgjfghfghmfgh
<option>hgkhgjlyuikythdbsdfhh
<option>4565hrtu467y45yerhty
</select>
<SCRIPT LANGUAGE="JavaScript">
<!--
function show(){
var elm = event.srcElement
var txt=elm.options[elm.selectedIndex].innerText
titleSelect.options[0].text = txt
titleSpan.style.display="";
titleSpan.style.left=event.x
titleSpan.style.top=event.y
}
function hide(){
titleSpan.style.display="none";
}
//-->
</SCRIPT>
</BODY>
</HTML>呵呵,写着玩的。
<HEAD>
<TITLE> emu </TITLE>
</HEAD>
<BODY>
<span id=titleSpan style="position:absolute;display:none">
<select style="margin-left:-2;margin-top:-2;margin-bottom:-2;margin-right:-18;background-color:#FFFFEE" id=titleSelect ><option>asdfsdf</select>
</span>
<BR><BR><CENTER>emu's test of drop-down's title</CENTER><BR><BR><select style="width:70" onmouseover="show()" onmouseout="hide()" multiple size=12>
<option>sdhfdfjytujktyuihgjjh
<option>asdgdfhfgjfghfghmfgh
<option>hgkhgjlyuikythdbsdfhh
<option>4565hrtu467y45yerhty
<option>sdhfdfjytujktyuihgjjh
<option>asdgdfhfgjfghfghmfgh
<option>hgkhgjlyuikythdbsdfhh
<option>4565hrtu467y45yerhty
<option>sdhfdfjytujktyuihgjjh
<option>asdgdfhfgjfghfghmfgh
<option>hgkhgjlyuikythdbsdfhh
<option>4565hrtu467y45yerhty
</select>
<SCRIPT LANGUAGE="JavaScript">
<!--
function show(){
var elm = event.srcElement
var i = Math.round((event.y-elm.offsetTop-5)/elm.offsetHeight*elm.size);
if (i>=elm.size) return;
var txt=elm.options[i].innerText
titleSelect.options[0].text = txt
titleSpan.style.display="";
titleSpan.style.left=elm.offsetLeft;
titleSpan.style.top=event.y
}
function hide(){
titleSpan.style.display="none";
}
//-->
</SCRIPT>
</BODY>
</HTML>
孟兄,原来你也在自己做Select呀!其实看起一个小小的select,做起来真的不容易呀!你还做了哪些控件?做得怎么样了?什么时候有空交换一下心得吧!