• 单元行上的鼠标悬停提示 【js读书笔记】


    单元行上的鼠标悬停提示

    1 2
    3 4
     
    <script type="text/javascript">
    		window.onload=function(){
    			var 
    				setCss=function(_this,cssOption){
    					if(!_this||_this.nodeType===3||_this.nodeType===8||!_this.style){
    						return;
    					}
    					for(var cs in cssOption){
    						_this.style[cs]=cssOption[cs];
    					}
    					return _this;
    				},
    				_mousepos={
    					"top":0,
    					"left":0
    				},
    				/*获取鼠标在页面的位置
    				 _e:触发的事件
    				 left:鼠标在页面上横向位置
    				 top:鼠标在页面上的纵向位置*/
    				getMousePoint=function(_e){
    					var _body=document.dody,
    						_left=0,
    						_top=0;
    					/*如果浏览器支持pageYOffset,那么可以使用pageXOffset 和 pageYOffset
    					 获取页面和视窗之间的距离*/
    					if(typeof window.pageXOffset!='undefined'){
    						_left=window.pageXOffset;
    						_top=window.pageYOffset;
    					}else if(typeof document.compatMode!='undefined'&&document.compatMode!='BackCompat'){/*如果浏览器制定了DOCTYPE并支持compatMode*/
    						_left=document.documentElement.scrollLeft;
    						_top=document.documentElement.scrollTop;
    					}else if(typeof _body!='undefined'){/*如果浏览器支持adocument.body*/
    						_left=_body.scrollLeft;
    						_top=_body.scrollTop;
    					}
    					_left+=_e.clientX;
    					_top+=_e.clientY;
    					_mousepos.left=_left;
    					_mousepos.top=_top;
    					return _mousepos;					
    				},
    				/*参数——e被绑定的节点:tooltipMsg显示信息的节点*/
    				tooltip=function(e,tooltipMsg){
    					var trE=e.rows,//获取被遍历的tr节点对象
    						trLen=trE.length,//获取被遍历的节点长度
    						i=0;
    					for(;i<trLen;i++){
    						var trEi=trE[i],
    							dataTooltip=trEi.getAttribute("data-tooltip");//获取数据
    						if(dataTooltip){//如果纯在data-tooltip数据则绑定响应事件
    							trEi.onmousemove=function(event){//显示信息提示
    								event=event||_W.event;
    								var _pos=getMousePoint(event);
    								//修正提示信息的坐标
    								tooltipMsg.innerHTML=this.getAttribute("data-tooltip");
    								setCss(tooltipMsg,{
    									"left":_pos.left+"px",
    									"top":(_pos.top+18)+"px",
    									"display":"inline"
    								});
    							}
    							
    							trEi.onmouseout=function(){
    								setCss(tooltipMsg,{
    									"display":"none"
    								});
    							}
    							
    						}
    					}
    				};
    			tooltip(document.getElementById("tooltip"),
    			document.getElementById("tooltipMsg"));
    		};
    	</script>
    

      

    提示信息
    “想要越幸运,就要越努力”
  • 相关阅读:
    C++互斥器:Semaphores
    C++互斥器:Mutex
    内联函数(inline)
    C++显式转换
    线程同步控制
    拷贝构造函数——防篡改
    extern关键字
    虚析构、纯虚析构
    类的友元关系
    char 与 unsigned char的本质区别
  • 原文地址:https://www.cnblogs.com/HollyLearning/p/5511504.html
Copyright © 2020-2023  润新知