You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
3.5 KiB
JavaScript

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
设置对象鼠标事件时之提示信息。此函数需要JQuery的支持并设置消息显示DIV 为浮动定位) HF
参数:
objid, 欲显示提示之元素ID
desid 欲显示之提示消息DIV ID
返回:
*/
function Set_objMessage_OnMouse(objid, desid)
{
//暂存计时器对象。
var objTimeID = null;
//鼠标进入时
$("#" + objid).mouseover(
function(eve)
{
var myevent = null;
var iTmp = 0;
myevent = eve == null ? window.event : eve;
//定位提示框部分超出页面范围
iTmp = (myevent.pageX + $("#"+desid).outerWidth()) - document.body.scrollWidth;
iTmp = iTmp > 0? myevent.pageX - $("#"+desid).outerWidth(): myevent.pageX;
$("#"+desid).css("top",myevent.pageY-170);
$("#"+desid).css("left",iTmp);
$("#" + desid).fadeIn("fast");
}
);
//鼠标退出时
$("#" + objid).mouseout(
function()
{
objTimeID = setTimeout("$('#" + desid + "').fadeOut('slow')",500);
}
);
//鼠标进入消息提示DIV时
$("#" + desid).mouseover(
function()
{
clearTimeout(objTimeID);
}
);
//鼠标退出消息提示DIV时
$("#" + desid).mouseout(
function()
{
objTimeID = setTimeout("$('#" + desid + "').fadeOut('slow')",500);
}
);
}
function offset(el){
var bmt = Number(getObjStyle(document.body,"marginTop").replace("px",""));
var bml = Number(getObjStyle(document.body,"marginLeft").replace("px",""));
var bbtw = Number(getObjStyle(document.body,"borderTopWidth").replace("px",""));
var bblw = Number(getObjStyle(document.body,"borderLeftWidth").replace("px",""));
var pos = {top:el.offsetTop,left:el.offsetLeft};
var node = el;
var tw,lw;
var ua = navigator.userAgent.toLowerCase();
if(ua.indexOf('msie') != -1){
while(node.offsetParent){
if(isNaN(tw))
tw=0;
pos.top += node.offsetParent.offsetTop;
node = node.offsetParent;
}
if(isNaN(bml))
bml=0;
if(isNaN(bblw))
bblw=0;
if(isNaN(bbtw))
bbtw=0;
pos.top += bbtw;
pos.left = el.offsetLeft+bml+bblw;
}
else if(ua.indexOf('opera') != -1){
while(node.offsetParent){
pos.top += node.offsetParent.offsetTop;
pos.left += node.offsetParent.offsetLeft;
node = node.offsetParent;
}
}
else if(ua.indexOf('chrome') != -1){
while(node.offsetParent){
tw = Number(getObjStyle(node.offsetParent,"borderTopWidth").replace("px",""));
lw = Number(getObjStyle(node.offsetParent,"borderLeftWidth").replace("px",""));
pos.top += node.offsetParent.offsetTop+tw;
pos.left += node.offsetParent.offsetLeft+lw;
node = node.offsetParent;
}
}
else{
while(node.offsetParent){
tw = Number(getObjStyle(node.offsetParent,"borderTopWidth").replace("px",""));
lw = Number(getObjStyle(node.offsetParent,"borderLeftWidth").replace("px",""));
pos.top += node.offsetParent.offsetTop+tw;
pos.left += node.offsetParent.offsetLeft+lw;
node = node.offsetParent;
}
pos.top += bbtw;
pos.left += bblw;
}
return pos;
}
function getObjStyle(obj,styleName){
return document.defaultView!=null?document.defaultView.getComputedStyle(obj,null)[styleName]:obj.currentStyle[styleName];
}