首页蓝耳朵|小小蓝耳朵广州图书馆外文室英语儿童读物资源介绍网佛教青年之友旧版收集永硕E盘Phonics Short Vowels Game 
input+select输入汉字或拼音快速选择数据第5步 获取控件座标等
所属栏目:DHTML  时间:2010-11-30 13:52  作者:狼子

先记录获取控件座标,下面还要大改。。。

//显示select
function ShowSelect(obj)
{
    //取当前input座标
    var oRect = obj.getBoundingClientRect();
    var x, y;
    x = oRect.left;
    y = oRect.top + 24;
    wordSelectDivObj.style.left = x + "px";
    wordSelectDivObj.style.top = y + "px";
    if(wordSelectDivObj.style.display == "none") wordSelectDivObj.style.display = "block";
}

还有这个,我想把事件的添加设置成先判断是否是fucntion的,就是,按这个设置后,原来写在ascx页面里的onclick事件还是被这个新的事件覆盖了,oldEvent好像没有加进去一样子,原因还没找到。。。

//给input添加onclick显示select,防止用户用箭头和回车选择一项后,重新点击鼠标要显示select再次选择
                myForm.elements[i].onclick = function() { ShowSelect(this); }
                //oldEvent = myForm.elements[i].onclick;
                //if(typeof oldEvent != 'function') { myForm.elements[i].onclick = function() { ShowSelect(this); } }
                //else myForm.elements[i].onclick = function() { oldEvent(); alert("OK"); ShowSelect(this); }

--------------------------------------------------------------

14:42 2010/11/30

现在还有一个问题,我在点击select的时候,点哪都直接执行onclick事件中的隐藏方法了

//点击select选择一项时,设置这一项的值到input
function SetInputValue()
{
    //获取当前激活的input控件
    var nowInputIndex = GetNowInputIndex();
   
    //设置选择项
    if(wordSelectObj.selectedIndex != -1)
    {
        wordInputArray[nowInputIndex].value = wordSelectObj.options[wordSelectObj.selectedIndex].text;
        wordValueArray[nowInputIndex].value = wordSelectObj.options[wordSelectObj.selectedIndex].value;
        wordSelectDivObj.style.display = "none";
    }
}

我需要在点击滚动条时,不执行这些语句,怎么判断点击的是滚动条呢?

小楼宝宝的涂鸦花花(Imitater)的博客起名称骨测字皖ICP备06000023号-17