Обновление IFRAME src во время встраивания в Thickbox - PullRequest
0 голосов
/ 07 февраля 2010

надеюсь простой вопрос здесь.

Я веду блог Wordpress, в котором есть несколько ссылок на разные города, которые указывают на местоположение на карте Google.

Моя текущая настройка включает в себя наличие iframe для каждой ссылки, и этот iframe выскакивает в толстом ящике при нажатии.

Теперь, когда мой список городов вырос, у меня есть много, много iframes, предварительно загружаемых за кулисы, пока страница загружается .... и это проблема.

Я думал, чтобы каждая ссылка обновляла src iframe, но я думаю, что мой 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 Ответ

1 голос
/ 07 февраля 2010

Возможно, благодаря параметру Thickbox ваш обработчик 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 для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...