您的位置:首页 > Web前端 > JavaScript

js 鼠标移动到控件显示控件的文本信息 移出则不显示

2013-03-26 11:16 573 查看
第一步,在html里面嵌入div,并写css

<div id="showinfo"></div>

#showinfo{top:-100;width:220;heigth:30;background:#a9dbf6;border:1px solid #a3bbce;position:absolute;}


第二步,当鼠标移动到元素上时,将信息框呈现出来。

/**当鼠标移动到元素上时,将信息框呈现出来******/
function onMouseMove()
{
showInfo.innerHTML='这是一个由js控制的信息框...';
showInfo.style.left = event.clientX + document.body.scrollLeft +20;
showInfo.style.top = event.clientY + document.body.scrollTop;
}
/**当推动鼠标事件,将信息框隐藏起来*****/
function onMouseOut()
{
showInfo.style.left = -100;
showInfo.style.top = -100;
}
var text36 = document.getElementById('text36');
var showInfo = document.getElementById('showInfo');
showInfo.style.top = showInfo.top;
text36.onmousemove = onMouseMove;
text36.onmouseout = onMouseOut;


如果用jquery的话,则代码如下:

/***参数介绍:divId是你要浮动显示层的ID,value你要给这个提示层里面放的值***/
$.fn.myHoverTip = function(divId, value) {
var div = $("#" + divId); //要浮动在这个元素旁边的层
div.css("position", "absolute");//让这个层可以绝对定位
var self = $(this); //当前对象
self.hover(function() {
div.css("display", "block");
var p = self.position(); //获取这个元素的left和top
var x = p.left + self.width();//获取这个浮动层的left
var docWidth = $(document).width();//获取网页的宽
if (x > docWidth - div.width() - 20) {
x = p.left - div.width();
}
div.css("left", x);
div.css("top", p.top);
div.html(value);
},
function() {
div.css("display", "none");
}
);

return this;
}
$(function() {
$("#text36").myHoverTip("showInfo","12e23e32edasdsad");
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: