JQuery Iframe SRC - PullRequest
       8

JQuery Iframe SRC

0 голосов
/ 07 декабря 2010

У меня есть HTML-страница, содержащая iframe, и я пытаюсь написать функции для ссылок в iframe.Функции внесут изменения в HTML-страницу ...

Следующий скрипт работает с первой ссылкой, по которой щелкают в фрейме.Но когда iframe вызывает "src", функция больше не будет работать.

Как я могу заставить ее работать, даже если src iframe изменен?

(все страницы находятся натот же домен)

<script type="text/javascript">
  $("iframe").contents().find("a").click(function() {
    alert('Load was performed.');
  });
</script>

Ответы [ 2 ]

1 голос
/ 07 декабря 2010

попробуйте использовать метод .live (), он привязывает событие к существующим и будущим элементам.Когда вы меняете src, вам нужно снова связать событие click с новыми ссылками.

Я не знаю, работает ли метод .live () в iframe, но вы можете попробовать это:

  $("iframe").contents().find("a").live('click',function() {
    alert('Load was performed.');
  });

Извините за мой сломанный английский!

Я не знаю, сработает ли это (извините, у меня нет сейчас места для проверки), но что произойдет, если вы попытаетесь связатьфункция события onLoad вашего iframe (даже если W3C сообщает, что iframe не имеет событий, он поддерживается всеми браузерами):

    <iframe src="/my_contents" onLoad="onload_function()"></iframe>
    ...
   <script>
        onload_function(){
          $(function(){
            $("iframe").contents().find("a").click(function() {
              alert('Load was performed.');
            });
          });
        }
    </script>
0 голосов
/ 07 декабря 2010

, если он совпадает с вашим доменом, он должен работать, если нет. Из-за Some Origin polciy он не будет работать как междоменный домен.

...