关于csdn的给分效果的再次实现!
2005-09-27 08:10
543 查看
上次的随笔有个问题,对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下面一切显示正常!!!
<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下面一切显示正常!!!
相关文章推荐
- 关于csdn的给分效果的再次实现!
- csdn的给分效果的js实现!
- csdn的给分效果的js实现!
- 关于实现csdn的frameset效果的问题
- csdn的给分效果的js实现!
- jQuery 关于点击菜单项,使子条目“向上”展开效果的实现
- 关于jQuery中实现放大镜效果
- JSP + JavaScript 实现类似 MSDN CSDN 导航树效果!
- 关于按钮“按下”效果的两种实现
- 3月题外:关于JS实现图片缩略图效果的一个小问题
- 关于ios中的点赞控件效果的实现--UIControl
- 关于交叉报表的动态实现 [http://blog.csdn.net/lupenda/archive/2004/10/18/141744.aspx]
- 关于仿智联招聘的多选页面效果的实现jquery
- android实现再次按下返回键退出效果
- jQuery关于导航条背景切换效果实现示例
- android中关于点击屏幕,实现破碎的效果的实现
- 关于Page_ClientValidate方法,完美实现验证控件成功后confirm确认效果
- 关于android中 TextView EditText 中的一些文本效果的实现i
- 类似 MSDN CSDN 左边导航树效果的实现! [JavaScript +
- 问题:贴友关于CSS效果的实现