selectTip.htc
-----------------------------------------------------------------------------------------------------------------------------------
<PUBLIC:ATTACH EVENT="ondocumentready" ONEVENT="addTip()"/>
<PUBLIC:ATTACH EVENT="onchange" ONEVENT="showTip()"/>
<PUBLIC:ATTACH EVENT="onmouseout" ONEVENT="hideTip()"/>
<SCRIPT LANGUAGE="JavaScript">
function addTip(){
var tip = '<div id="select_tip_'+element.name+'" class="tipStyle"></div>';
element.insertAdjacentHTML("afterEnd",tip);
if (element.size > 1){
element.selectedIndex = (element.selectedIndex==-1) ? 0 : element.selectedIndex;
}
}
function showTip(){
/*var obj = element.parentElement.children[1];
with (obj){
var index = element.selectedIndex;
innerText = element.options[index].text;
if (innerText.length > 0) {
innerText = " " + innerText + " ";
style.display = "block";
style.top = event.clientY;
var offWidth = 200;
var positLeft = parseStrInt(element.offsetLeft) + parseStrInt(element.offsetWidth);
if (positLeft+offWidth > document.body.offsetWidth){
positLeft = parseStrInt(element.offsetLeft) - offWidth;
}
style.left = positLeft ;
style.width = offWidth;
}
}*/
var parentObj = element;
while (parentObj && parentObj.tagName!='BODY'){
parentObj = parentObj.parentElement;
}
var obj = parentObj.children[1];
var index = element.selectedIndex;
var innerText = element.options[index].text;
obj.innerHTML = innerText;
obj.style.visibility = "visible";
}
function hideTip(){
/*var obj = element.parentElement.children[1];
with (obj){
style.display = "none"
}*/
var parentObj = element;
while (parentObj && parentObj.tagName!='BODY'){
parentObj = parentObj.parentElement;
}
var obj = parentObj.children[1];
obj.style.visibility = "hidden";
}
function parseStrInt(widthStr){
var width = parseInt(widthStr);
if (isNaN(width)){
while ((width=pareInt(widthStr)) >= 0){
widthStr = widthStr.substring(0,widthStr.length-1);
}
}
return width;
}
</SCRIPT>
---------------------------------------------------------------------------------------------------------------------------------
在test.htm页面:
<style>
.selectTip{behavior:url(../js/behavior/selectTip.htc)}
</style>
<div id="select_tip" style="background-color:#00FFCC;visibility:hidden"> </div>
<!--这个DIV是显示超长的Select内容的,必须在body的第二个元素-->
<span><select name="formula_candidate" size="8" multiple style="width:350px" class="selectTip" οndblclick="selectFunc()" onChange="select_candidate()"></select></span>