使用onClick隐藏地图并显示另一个地图

时间:2017-02-27 13:30:57

标签: javascript html css google-maps

我正在为客户建立一个简单的网站,他们有两个工作室,他们希望在联系部分的googleMaps上显示它们。问题是,我无法一次显示两张地图。所以我想这样做,当你点击一个地址时,它会隐藏一个地图并显示另一个地址,反之亦然。这是代码:

function showMapOne() {
  document.getElementById("mapOne").style.display = "block";
  document.getElementById("mapTwo").style.display = "none";
}

function showMapTwo() {
  document.getElementById("mapOne").style.display = "none";
  document.getElementById("mapTwo").style.display = "block";
}
#addressOne {
  padding-left: 20px;
  font-family: "arial";
}

#mapOne {
  display: block;
  position: absolute;
  width: 1050px;
  height: 500px;
}

#addressTwo {
  position: relative;
  padding-left: 20px;
  padding-top: 500px;
  font-family: "arial";
}

#mapTwo {
  display: none;
  position: relative;
  width: 1050px;
  height: 500px;
}
<div id="addressOne">
  <a href="#" onClick="showMapOne">Via G. Mattei, 114 - Arese - MI</a>
</div>

<div id="addressTwo">
  <a href="#" onClick="showMapTwo">Via Miralago, 12 - Laveno Mombello -    VA</a>
</div>

<div id="mapDivOne">
  <div id="mapOne"></div>
</div>

<div id="mapDivTwo">
  <div id="mapTwo"></div>
</div>

1 个答案:

答案 0 :(得分:0)

您在函数调用onClick="showMapOne()"onClick="showMapTwo()"

中缺少()

也许你的意思是这个?

&#13;
&#13;
window.onload=function() {
  document.getElementById("address_One").onclick=document.getElementById("address_Two").onclick=function() {
    var id = this.id.split("_")[1];
    document.getElementById("mapOne").style.display = id=="One"?"block":"none";
    document.getElementById("mapTwo").style.display = id=="Two"?"block":"none";
  }
}
&#13;
#addressOne {
  padding-left: 20px;
  font-family: "arial";
}

#mapOne {
  display: block;
  position: absolute;
  width: 1050px;
  height: 500px;
}

#addressTwo {
  position: relative;
  padding-left: 20px;
  padding-top: 500px;
  font-family: "arial";
}

#mapTwo {
  display: none;
  position: relative;
  width: 1050px;
  height: 500px;
}
&#13;
<div>
  <a id="address_One" href="#">Via G. Mattei, 114 - Arese - MI</a>
</div>
<div id="mapOne">Map 1</div>
<div id="addressTwo">
  <a href="#" id="address_Two" >Via Miralago, 12 - Laveno Mombello -    VA</a>
</div>
<div id="mapTwo">Map 2</div>
&#13;
&#13;
&#13;