• 关于csdn的给分效果的再次实现!


    上次的随笔有个问题,对firefox不支持,而且如果是用datagrid或者datalist或者repeater绑定的文本框就会出现问题.下面是新代码:
    <div id="pop" style="DISPLAY: none; FONT-SIZE: 12px; BACKGROUND: #ffff00; WIDTH: 120px; POSITION: absolute"></div>
                <script language="javascript">
          var cen = document.getElementById("pop");//得到那个提示框
          function fen(e)
          {
             //通过隐藏字段得到总分数
             var zong = parseInt((document.getElementById("hiddenMark")).value);
             var obj = document.getElementById("Table2");//得到那个包含repeater的表格
             var objs = obj.getElementsByTagName("INPUT");//得到表格里所有输入框
             var gei = 0;//定义已经给了多少分
             for(var i=0;i<objs.length;i++)
             {
                gei = gei+parseInt(objs[i].value);//循环得到所有已经给的分
             }
             var n = zong - gei;//得到还有多少分可以给
             //如果多给了分就让提示层的背景红色
           
             cen.style.background = (n<0) ? "#ff0000" : "#ffff00"; 
             cen.innerHTML = "该问题总分值:" + zong + "还可以给的分:" + n;
             return n;
          }
         
          //当鼠标移到这个给分框的时候执行这个函数
          function cc(e)
          {
             var a = e.id;//首先根据传入的对象获得他的id
             var b = document.getElementById(a);//再根据id获得这个对象
             b.select();//让取得的这个输入框全部选择,当然也获得了焦点,必须要这样才能够让他获得焦点
             fen(e);//计算分数
             var ttop = b.offsetTop;//获得输入框的上面偏移
             var tleft= b.offsetLeft;//获得输入框的左偏移量
             var h = b.clientHeight;//获得输入框的高度
             var w = e.clientWidth;//获得输入框的宽度
             while (b = b.offsetParent){ttop += b.offsetTop; tleft += b.offsetLeft;}
             cen.style.top = ttop + h;
             cen.style.left= tleft + w - cen.clientWidth;
             cen.style.display = "";
          }
         
          //当鼠标移开的时候执行的函数
          function out(e)
          {
             cen.style.display = "none"; //提示层隐藏
          }
                </script>
          </body>

    经过测试在firefox下面一切显示正常!!!
  • 相关阅读:
    详细的git入门级别,从安装到实战
    Linux安装maven超级详细步骤
    比较全的开源软件镜像地址
    区块链应用领域
    区块链来源比特币,区块链基础构造
    xpath定位总结--精简版
    python装饰器
    python六剑客
    Python断言方法:assert
    python3对excel读写openpyxl
  • 原文地址:https://www.cnblogs.com/hantianwei/p/1696754.html
Copyright © 2020-2023  润新知