zoukankan      html  css  js  c++  java
  • 点击事件在当前点击位置弹出一个弹窗

    <script type="text/javascript">
                //获取鼠标位置GetPostion 
                function GetPostion(e) { 
                var x = getX(e); 
                var y = getY(e); 
                return [x,y]
                } 
                function getX(e) { 
                e = e || window.event; 
                return e.pageX || e.clientX + document.body.scrollLeft - document.body.clientLeft 
                } 
                function getY(e) { 
                e = e|| window.event; 
                return e.pageY || e.clientY + document.body.scrollTop - document.body.clientTop 
                } 
                
                $("table tr").click(function(){
                    $(".cars-info-control").remove();
                    var mousePos=GetPostion();
                    var selfY=mousePos[1]-40;
                    var selfX=mousePos[0]-78;
                    $('<div class="btn-group cars-info-control"><a class="btn">调度</a> <a class="btn">当前位置</a> <a class="btn">视频</a> </div>')
                    .css("position","absolute").css("top",selfY).css("left",selfX).appendTo("body")
                })
            </script>

     上述方法,在FF下是无用 报错(e is undifind),原来FF不支持直接的event,解决方法是不直接利用event属性,用下面的代码即可

     function getEvent() //同时兼容ie和ff的写法
            {  
                if(document.all)   return window.event;    
                func=getEvent.caller;        
                while(func!=null){  
                    var arg0=func.arguments[0];
                    if(arg0)
                    {
                      if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation))
                      {  
                      return arg0;
                      }
                    }
                    func=func.caller;
                }
                return null;
            }
     //获取鼠标位置GetPostion 
             function GetPostion() {
                  var e=getEvent();
                  var x = getX(e);
                  var y = getY(e);
                  return [x, y]
               }
    
             function getX(e) {
                   
                 return e.pageX || e.clientX + document.body.scrollLeft - document.body.clientLeft
               }
    
             function getY(e) {
                 
                return e.pageY || e.clientY + document.body.scrollTop - document.body.clientTop
              } 
  • 相关阅读:
    POJ 1401 Factorial
    POJ 2407 Relatives(欧拉函数)
    POJ 1730 Perfect Pth Powers(唯一分解定理)
    POJ 2262 Goldbach's Conjecture(Eratosthenes筛法)
    POJ 2551 Ones
    POJ 1163 The Triangle
    POJ 3356 AGTC
    POJ 2192 Zipper
    POJ 1080 Human Gene Functions
    POJ 1159 Palindrome(最长公共子序列)
  • 原文地址:https://www.cnblogs.com/wenb/p/7263289.html
Copyright © 2011-2022 走看看