Javascript. Фунция в <iframe>

User avatar
wolfboy
Уже с Приветом
Posts: 1224
Joined: 24 Feb 2003 07:40

Javascript. Фунция в <iframe>

Post by wolfboy »

Есть страница с <iframe>

page1.html:
<html>
<body>
...
<iframe name='iframe' src="page2.html ></frame>
...
</body>
</html>

page2.html
<html>
<header>
function MyFunction(){
alert('qoo-qoo!')
}
</header>
<body>
...
</body>
</html>

Как вызвать функцию MyFunction со страницы page1.html?

Спасибо
Roy
Уже с Приветом
Posts: 1234
Joined: 24 Nov 1999 10:01
Location: Seattle

Post by Roy »

iframe.MyFunction()

You'll probably need to set id=iframe on the frame as well.
User avatar
Ильгиз Латыпов
Новичок
Posts: 77
Joined: 31 Jan 2004 20:41
Location: Уфа, Башкирия - Китченер, Онтарио

Post by Ильгиз Латыпов »

Синтаксически правильная страница должна экранировать джаваскрипт тегами "script" и комментированием.
<script>
<!--
function MyFunction() {
}
-->
</script>

Кстати, метод комментирования оспаривается знатоками, потому что он может оказаться недостаточно чётким в случае использования символов-"сущностей" наподобие "&amp;" и даже в случае попадания последовательности "<somestring>".

Последние поиски в интернете наводят на теги

<script>
<![CDATA[
function MyFunction() {
}
]]>
</script>

См.

http://en.wikipedia.org/wiki/CDATA_section
User avatar
wolfboy
Уже с Приветом
Posts: 1224
Joined: 24 Feb 2003 07:40

Post by wolfboy »

Про <script></script>, ето понятно. :)

А, между прочим, зачем комментарии? :oops:
Кажется, затем, чтобы HTML-парсеры игнорировали скрипты. Или что то еще?
User avatar
Ильгиз Латыпов
Новичок
Posts: 77
Joined: 31 Jan 2004 20:41
Location: Уфа, Башкирия - Китченер, Онтарио

Post by Ильгиз Латыпов »

Потому что текст джаваскрипта не обязан быть "хорошо форматированным", т.е. не подчиняется правилам маркированного языка. Парсер запнётся на такой часто встречающейся последовательности в джаваскрипте, как "<somestring".
0x0FF0
Уже с Приветом
Posts: 725
Joined: 28 Oct 2004 01:08
Location: Lviv->Kiev->Toronto->San Diego

Post by 0x0FF0 »

Ильгиз Латыпов wrote:Потому что текст джаваскрипта не обязан быть "хорошо форматированным", т.е. не подчиняется правилам маркированного языка. Парсер запнётся на такой часто встречающейся последовательности в джаваскрипте, как "<somestring".


Нет, не по этому. Можно написать &lt;something.
Это делается что бы браузеры не поддерживающие java script игнорировали тело скрипта а не показывали его на странице.

Return to “Вопросы и новости IT”