中国设计联盟
联网
平面设计 画册 VI欣赏 包装 CG-插画 搜索 个人网页 Alexa排名 CSS 建站资源 下载专区 JS特效 品牌服装 服装院校 专题欣赏 SEO 图标欣赏 专题
网站建设 域名注册 虚拟主机 广州网站设计 域名注册 广州网站建设 上海网站建设 虚拟主机 广州网页设计  虚拟主机 域名注册 acg王国 ACG玩家
求创科技
网站建设
中国福网
招聘求职
中国互联
艺魂宝库网
中资源
当前位置:网络学院首页 >> 编程开发 >> asp >> 可输入下拉列表的实现方法

可输入下拉列表的实现方法 (2)

来源:中国设计秀    作者:    点击:941     加入收藏    发表评论
0
顶一下

 objDiv.style.width=obj.offsetWidth
 objDiv.style.height=’’;
 objDiv.style.overflowY=’’;
 objDiv.innerHTML=’’
 //读取select的项目放到Div里。
 for(var x=0;x<seleObj.options.length;x++)
 {objDiv.innerHTML+="<div onmouseover=\"divOnmoveover(this,’" + obj.id + "’)\" style=’width:100%;white-space: nowrap;cursor: default;’>"+seleObj.options[x].text+"</div>"}
 //调整Div高度,过度显示滚动条
 if(x>8)
 {
  objDiv.style.height=100;
  objDiv.style.overflowY=’auto’;
 }
 objDiv.style.display=’’
 if(ie){HideOverSels(objDiv.id)}
 objDiv.onmouseover=function(){m_intTextSelectIn=true}
 objDiv.onmouseout=function(){m_intTextSelectIn=false;obj.focus();}
 
 obj.onclick=function(){showSelect(obj,A_seleObj);obj.onkeyup();}
 //自动匹配选项中符合条件的记录
 obj.onkeyup=function(){
  if(obj.value==’’){return false}
  var objChilddiv=objDiv.getElementsByTagName("div")
  for(var x=0;x<objChilddiv.length;x++)
  {objChilddiv[x].style.cssText=’’}
  for(var x=0;x<objChilddiv.length;x++)
  {
   var strChilddiv=(ie)?objChilddiv[x].outerText:obj.textContent   if(strChilddiv.substr(0,obj.value.length)==obj.value)
   {
    objDiv.scrollTop=objChilddiv[x].offsetHeight*x
    objChilddiv[x].style.cssText=’background-color: #330066;color: #ffffff;’
    return true
   }
  }
 }
 obj.onblur=function(){if(!m_intTextSelectIn){objDiv.style.display=’none’};if(ie){HideOverSels(objDiv.id)}}
}
// 隐藏被ID为objID的对象(层)遮挡的所有select
function HideOverSels(objID)
{
  var sels = document.getElementsByTagName(’select’); 
  for (var i = 0; i < sels.length; i++) 
  if (Obj1OverObj2(document.getElementById(objID), sels[i]))
 sels[i].style.visibility = ’hidden’; 
    else
    sels[i].style.visibility = ’visible’;
}
//判断obj1是否遮挡了obj2
function Obj1OverObj2(obj1, obj2)
{
var pos1 = getPosition(obj1) 
var pos2 = getPosition(obj2) 
var result = true; 
var obj1Left = pos1.left - window.document.body.scrollLeft; 
var obj1Top = pos1.top - window.document.body.scrollTop; 
var obj1Right = obj1Left + obj1.offsetWidth; 
var obj1Bottom = obj1Top + obj1.offsetHeight;
var obj2Left = pos2.left - window.document.body.scrollLeft; 
var obj2Top = pos2.top - window.document.body.scrollTop; 
var obj2Right = obj2Left + obj2.offsetWidth; 
var obj2Bottom = obj2Top + obj2.offsetHeight;
if (obj1Right <= obj2Left || obj1Bottom <= obj2Top || 
  obj1Left >= obj2Right || obj1Top >= obj2Bottom) 
  result = false; 
return result; 
[1] [2] [3] [4]
2007-10-08 15:16:00    出处:
Google
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明 | 网站公告 | 友情链接 | 留言 | 旧版入口