如何触发一个具有不同id的函数

时间:2016-04-09 08:35:00

标签: javascript

我有一个主PHP文件,其中包含8个PHP文件。我使用bootstrap class" Modal"我在每个模态中使用谷歌地图。所以我有不同的ID来显示谷歌地图,但功能是相同的。这意味着,当每个模态弹出窗口中的一个时,该功能将被触发并显示谷歌地图。我为每个ID实现了8个不同的功能。

我想要的是,有没有办法只用一个函数来实现?

更明确地说,如果使用 <div class="divide10"></div> <div class="row"> <div class="col-sm-4"> <div class="caption-overlay"> <figure><a href="#"><img src="http://inmufest.com/images/pepsi_147x200.jpg" alt="" /> </a></figure> <div class="caption bottom-right"> <div class="title"> <a href="#"><h3 class="main-title layer">Pepsi</h3></a> </div> <!--/.title --> </div> <!--/.caption --> </div> </div> <div class="col-sm-4"> <div class="caption-overlay"> <figure><a href="#"><img src="http://inmufest.com/images/pepsi_147x200.jpg" alt="" /> </a></figure> <div class="caption bottom-right"> <div class="title"> <a href="#"><h3 class="main-title layer">Pepsi</h3></a> </div> <!--/.title --> </div> <!--/.caption --> </div> </div> 进行模态弹出,则会在id = 1中显示google地图,如果使用<div id="location_incident1">进行模式弹出,则会在id = 2中显示google地图,如果使用<div id="location_incident2">进行模态弹出,则会在id = 3中显示Google地图,依此类推。

这是我的代码:

<div id="location_incident3">

1 个答案:

答案 0 :(得分:0)

如果您不需要在函数外部保留map3marker3,...变量,则应使用局部变量,即var mapvar market ,...

可以使用+连接运算符动态创建编号字符串,如下所示:

function locationOfIncident(n, current) {
  ...
  var map = new google.maps.Map(document.getElementById('location_incident' + n), mapOption);
  ...
}

您可以在文本编辑器中使用正则表达式替换来重构对locationOfIncident1locationOfIncident2,......的调用:locationOfIncident(\d+)\s*\( =&gt; locationOfIncident\($1,