我看了,可是cc函数中的第一个e和第二个e说是不一样的行参,可是我看不懂,能解释一下吗?

解决方案 »

  1.   

    <div id="pop" style="position:absolute;width:120; display: none; z-index:99; font-size: 13px; background: #ffff00"></div>
    <script language="javascript">
    var cen = document.all.pop;
    function fen()
    {
    var zhong = parseInt(document.all.zhongFen.value); //得到总分值
    var a = document.getElementsByName("T");
    var gei = 0;
    for (var i=0; i<a.length; i++)
    {  gei = (a[i].value=="") ? gei : (gei + parseInt(a[i].value));}
    var n = zhong-gei;
    cen.style.background = (n < 0) ? "#FF0000" : "#FFFF00";
    cen.innerText = "该问题总分值:"+ zhong +"\r\n现可给的分值:"+ n;
    return n;
    }
    function cc(e)
    {
    if (e.name != "T") return;
    e.select();
    fen();
    /*
    var ttop  = e.offsetTop;     //TT控件的定位点高
    var thei  = e.clientHeight;  //TT控件本身的高
    //var tleft = e.offsetLeft;    //TT控件的定位点宽
    while (e = e.offsetParent){ttop += e.offsetTop; tleft += e.offsetLeft;}
    cen.style.top  = ttop+thei+4; //层的 Y 坐标
    //cen.style.left = tleft + 1;  //层的 X 坐标 var tleft = e.offsetLeft;
    while (e = e.offsetParent){ttop += e.offsetTop; tleft += e.offsetLeft;}
    cen.style.left = tleft + e.clientWidth -  cen.clientWidth;
    */
        var ttop = e.offsetTop;
        var tleft= e.offsetLeft;
        var h = e.clientHeight;   //在下面这个 while 循环里的e已经不是那个形参了
        var w = e.clientWidth;    while (e = e.offsetParent){ttop += e.offsetTop; tleft += e.offsetLeft;}
    cen.style.display = "";  //层显示
        cen.style.top = ttop + h;
        cen.style.left= tleft + w - cen.clientWidth;}
    function out(){cen.style.display = "none";}
    function check(e)
    {
    var k = window.event.keyCode;
    if (k < 48 || k > 57){
    alert("你输入的不是数字!")
    window.event.keyCode = 0 ;}
    }
    </script>
      

  2.   

    查看>>源文件
    <script language="JavaScript">...............</script>
    这些就是了啦.