Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Можно ли научить скрипт понимать, что страница открыта во фрейме? (https://javascript.ru/forum/misc/16909-mozhno-li-nauchit-skript-ponimat-chto-stranica-otkryta-vo-frejjme.html)

Himmler 28.04.2011 01:35

Можно ли научить скрипт понимать, что страница открыта во фрейме?
 
Доброго времени суток.

Есть скрипт работающий таким образом:
if (window.location.host=="mysite.ru") {
  document.write("Yes")
} else {
  document.write("No")
}


То есть на нужном мне сайте он выдаст одну информацию, а на сторонних другую.
Но если открыть страницы где вставлен этот скрипт во фрейме, скажем на mysite2.ru, он выдаст "Yes".

Можно ли научить его выдавать "No" если страница открыта во фрейме?
То есть научить его понимать, что страница открыта во фрейме, а не в окне/вкладке браузера.

Gvozd 28.04.2011 02:34

да, можно.
например яндекс так умеет

Kolyaj 28.04.2011 13:46

if (top != self) {
    alert('Фрейм');
}

Himmler 28.04.2011 14:55

Всем спасибо, все работает :)
В результате код получился такого вида:
if (window.location.host=="mysite.ru") {
 if (top != self) {
  document.write("No")
 } else {
  document.write("Yes")
}
} else {
 document.write("No")
}


Часовой пояс GMT +3, время: 11:18.