嵌入在Thickbox中时更新IFRAME src

时间:2010-02-07 19:02:26

标签: javascript jquery html iframe

希望这里有一个简单的问题。

我正在运行一个Wordpress博客,其中包含一系列指向不同城市的链接,指向Google地图上的某个位置。

我目前的设置涉及为每个链接设置一个iframe,并在点击时在ifbox中弹出iframe。

既然我的城市列表已经增长,我在页面加载时会在幕后预装多个iframe ......这就是问题所在。

我的想法是让每个链接更新iframe的src,但我认为我的thickbox正在抛弃它。

这是我试图用来更新链接的javascript代码..

document.getElementById('map_frame').src = new_url;

这将是一个相关的链接,会触发这个......

<li class="sub_li">
  <a href="#TB_inlinemodalContent?height=700&width=500&inlineId=map_frame" onclick="switch_map('bregenz');" title="Bregenz, Austria" class="thickbox">bregenz</a>
</li>

其中,new_url是通过一个大的switch语句填充的(通过使用跟踪调试,我知道至少可以这样做)。

然而,当灯箱弹出时,显示的地图永远不会改变......它只是我预先加载的初始地图。

1 个答案:

答案 0 :(得分:1)

厚箱可能会移除你的onclick处理程序,你应该代替那个,添加代码将你的点击处理程序添加到另一个上下文的链接上,例如:

<script type="text/javascript">
$(function() { //when the document is ready
  $('a.thickbox').bind('click',function() { //bind a click handler all the a elements with thickbox class
    switch_map($(this).attr("title")); //execute your function
  });
});
</script>

而不是获取title属性,您可以添加一个名为“value”或“city”的新属性,并将要传递给switch_map函数的值放在那里。 我假设您可以使用jQuery来执行此操作。