有一个按钮,这个按钮对应一个onclick事件;当点击完这个按钮后,需要在onclick这个函数里面等待鼠标执行一个取点的事件,即鼠标点击完按钮后,鼠标要到地图上去选一个点(点鼠标左键),然后再回到onclick函数里面,读取这个点的参数,再继续往下执行。请问这个应该怎么实现?

解决方案 »

  1.   

    就一个onclick时间,没有你说的这么复杂
      

  2.   

    你是想点击按钮开始在地图选择坐标,然后再执行下面的事是吧那就把主要的内容都写在点击地图的事件里吧
    而按钮点击就做一个switch吧
    var a = false;
    when button click,a = true
    when map click && a ==  true
    do..
      

  3.   

    按钮.onclick=function()
    {
    一个点.click()
    }一个点.onclick=function()
    {
    读取这个点的参数,再继续往下执行
      

  4.   

    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>test</title>
    <script>
    var flag = false;
    function clickPoint(o){
    if(!flag){
    document.getElementById("s1").innerHTML = "请取点...";
    o.value = "取消";
    flag = true;
    document.getElementById("d1").style.display = "block";
    }else{
    document.getElementById("s1").innerHTML = "";
    o.value = "取点";
    flag = false;
    document.getElementById("d1").style.display = "none";
    }
    }
    function getPoint(){
    if(flag){
    document.getElementById("s1").innerHTML = "("+event.offsetX+"px,"+event.offsetY+"px)";
    document.getElementById("b1").value = "取点";
    flag = false;
    document.getElementById("d1").style.display = "none";
    }
    }
    </script>
    </head><body>
    <input type=button id="b1" value="取点" onclick="clickPoint(this)"><span id="s1"></span>
    <div id="d1" style="background-color:red;height:200px;width:200px;cursor:crosshair;display:none" onclick="getPoint()"></div>
    </body></html>
      

  5.   

    用jQuery:$('#mybutton').click(function(){
        $('#mydiv').mouseup(function(event){
            //鼠标左边在event变量里
            //blah blah
        });
    });
      

  6.   


    $('#mybutton').click(function(){
        $('#mydiv').mousedown(function(event){
            if(event.button==2){
    //onclick function
            }
        });
    });
      

  7.   

    这个,大概流程这样:var map_act = false;
    button.onclick = func_button(){
      map_act = map_act == true ? map_act = false : true;
    }
    map.onclick = func_map() {
      if(map_act == true)
      {
        // 执行button激活,然后点击map后希望的操作。
      }
    }