鼠标onmousemove 到控件上,显示提示信息!
2009-06-29 10:55
351 查看
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<script language="javascript">
var width = "80";
var height = ""
//设置层显示坐标
var offsetx = 2;
var offsety = 16;
var x = 0;
var y = 0;
var show = false;//判断是否显示层
var dStyle;//设置层的样式
document.onmousemove = mEvn;//作用重绘 document.onmousemove获取窗体的所有鼠标移动事件
//鼠标移动到目标对象上显示提示 该方法只会在鼠标移动到目标对象上时只执行一次 之后转到 mEvn()执行该函数中的内容
function mOvr() {
dStyle = detail.style;//获取层的样式对象
var obj = window.event.srcElement;//获取触发事件的对象
if (obj.nodeName == "FONT") {
obj.runtimeStyle.cssText = "background-color:#C0D0E8";
}
var s;//提示的内容
s = "这里写你要提示的信息!";
//document.all["detail"].innerHTML = s; //document.all["detail"]返回对象所包含id为detail的元素集合的引用。
detail.innerHTML = s;
if(show == false){
if((x + offsetx)<40){
dStyle.left = x + offsetx;
}else if((x + offsetx+(width/2))>250){
dStyle.left = x + offsetx - (width);
}else{
dStyle.left = x + offsetx - (width/2);
}
if((y + offsety+height)>280){
dStyle.top = y + offsety - height;
}else{
dStyle.top = y + offsety;
}
dStyle.visibility = "visible";
show = true;
}
}
//鼠标移开触发该事件 该方法只会在鼠标移走目标对象上时只执行一次
function mOut() {
var obj = window.event.srcElement;
if (obj.nodeName == "FONT") {
obj.runtimeStyle.cssText = "";
}
show = false;
dStyle.visibility = "hidden";
}
//整个窗体上的移动事件都将执行该方法
function mEvn() {
x = event.x;
y = event.y;
if (document.body.scrollLeft) {
x = event.x + document.body.scrollLeft;
y = event.y + document.body.scrollTop;
}
if (show) {
if((x + offsetx)<40){
dStyle.left = x + offsetx;
}else if((x + offsetx+(width/2))>250){
dStyle.left = x + offsetx - (width);
}else{
dStyle.left = x + offsetx - (width/2);
}
if((y + offsety+height)>280){
dStyle.top = y + offsety - height;
}else{
dStyle.top = y + offsety;
}
}
}
/*
//下面俩个只是测试用的
function test1(){
alert(test.value);//可以直接通过id名称来调用一个对象其功能相当于 document.getElementById("test");
}
function test2(){
for(i = 0; i < document.all.length; i++){//获取页面所有元素包含隐藏的元素
alert(document.all(i).tagName);
}
}*/
</script>
</head>
<body onload="">
<div id="detail" style="POSITION: absolute" title="ddd"></div>
<table>
<tr>
<td onMouseOver="mOvr()" onMouseOut="mOut()" style="cursor:hand">
提示信息
</td>
<td><input type="text" value="22" id="test" /> <font onMouseOver="mOvr()" onMouseOut="mOut()">测试</font></td>
</tr>
</table>
</body></html>
<head>
<script language="javascript">
var width = "80";
var height = ""
//设置层显示坐标
var offsetx = 2;
var offsety = 16;
var x = 0;
var y = 0;
var show = false;//判断是否显示层
var dStyle;//设置层的样式
document.onmousemove = mEvn;//作用重绘 document.onmousemove获取窗体的所有鼠标移动事件
//鼠标移动到目标对象上显示提示 该方法只会在鼠标移动到目标对象上时只执行一次 之后转到 mEvn()执行该函数中的内容
function mOvr() {
dStyle = detail.style;//获取层的样式对象
var obj = window.event.srcElement;//获取触发事件的对象
if (obj.nodeName == "FONT") {
obj.runtimeStyle.cssText = "background-color:#C0D0E8";
}
var s;//提示的内容
s = "这里写你要提示的信息!";
//document.all["detail"].innerHTML = s; //document.all["detail"]返回对象所包含id为detail的元素集合的引用。
detail.innerHTML = s;
if(show == false){
if((x + offsetx)<40){
dStyle.left = x + offsetx;
}else if((x + offsetx+(width/2))>250){
dStyle.left = x + offsetx - (width);
}else{
dStyle.left = x + offsetx - (width/2);
}
if((y + offsety+height)>280){
dStyle.top = y + offsety - height;
}else{
dStyle.top = y + offsety;
}
dStyle.visibility = "visible";
show = true;
}
}
//鼠标移开触发该事件 该方法只会在鼠标移走目标对象上时只执行一次
function mOut() {
var obj = window.event.srcElement;
if (obj.nodeName == "FONT") {
obj.runtimeStyle.cssText = "";
}
show = false;
dStyle.visibility = "hidden";
}
//整个窗体上的移动事件都将执行该方法
function mEvn() {
x = event.x;
y = event.y;
if (document.body.scrollLeft) {
x = event.x + document.body.scrollLeft;
y = event.y + document.body.scrollTop;
}
if (show) {
if((x + offsetx)<40){
dStyle.left = x + offsetx;
}else if((x + offsetx+(width/2))>250){
dStyle.left = x + offsetx - (width);
}else{
dStyle.left = x + offsetx - (width/2);
}
if((y + offsety+height)>280){
dStyle.top = y + offsety - height;
}else{
dStyle.top = y + offsety;
}
}
}
/*
//下面俩个只是测试用的
function test1(){
alert(test.value);//可以直接通过id名称来调用一个对象其功能相当于 document.getElementById("test");
}
function test2(){
for(i = 0; i < document.all.length; i++){//获取页面所有元素包含隐藏的元素
alert(document.all(i).tagName);
}
}*/
</script>
</head>
<body onload="">
<div id="detail" style="POSITION: absolute" title="ddd"></div>
<table>
<tr>
<td onMouseOver="mOvr()" onMouseOut="mOut()" style="cursor:hand">
提示信息
</td>
<td><input type="text" value="22" id="test" /> <font onMouseOver="mOvr()" onMouseOut="mOut()">测试</font></td>
</tr>
</table>
</body></html>
相关文章推荐
- 鼠标停在控件上就显示提示信息
- VC/MFC 当鼠标移到控件上时显示提示信息
- VC/MFC 当鼠标移到控件上时显示提示信息
- [MFC] 鼠标移动到控件上显示提示信息
- 鼠标移动到控件上显示提示信息
- 用windows media player打开mp3文件时提示,找不到指定模块;并且鼠标指向音乐文件时不能显示详细的文件信息,如位速等
- MFC 学习之 鼠标移动到Toolbar按钮上显示提示信息(tooltip),状态栏也随之改变
- Swing鼠标悬停时巧用上下文菜单显示提示信息
- Dev系列控件之XtraChart高级应用(模拟flash鼠标移动,点击实现相关信息提示)
- MFC中通过Tooltip类来实现悬浮鼠标显示提示信息
- .Net验证控件显示提示信息
- asp.net中GridView数据鼠标移入显示提示信息
- C#中,当鼠标移动到控件上,动态显示提示内容 ToolTip
- jQuery鼠标悬停显示提示信息窗体
- 提示信息 感应鼠标移动事件 自动显示url页面内容
- idea 鼠标悬浮时显示文档信息提示框
- 鼠标点击清空文本框 失去焦点显示提示信息
- C#在同一个控件的不同位置显示提示信息
- VC/MFC 在ListCtl 控件中随鼠标移动提示单元格信息
- MFC添加鼠标移动到控件上时的提示信息