Запретить открытие в новой вкладке / окне - PullRequest
1 голос
/ 02 июня 2011

У меня есть веб-сайт с музыкальным проигрывателем в одном из углов. Поскольку я не хотел, чтобы музыка останавливалась каждый раз, когда пользователь изменяет часть веб-сайта, я использовал iFrame для контента. Поэтому, когда кто-то нажимает кнопки меню, все, что изменяется, это источник iFrame.

Теперь единственная проблема в том, что кто-то пытается открыть одну из подстраниц в новой вкладке / окне. Все, что они получают, это черный текст на белом фоне с содержимым, которое должно было быть в iFrame.

Есть ли способ предотвратить это?

О, и страница, о которой идет речь, www.sinjabe.com , если это поможет.

Спасибо

Ответы [ 3 ]

0 голосов
/ 02 июня 2011

Вы можете изменить свои подстраницы, чтобы определить, загружены ли они в iframe, например:

(window.location != window.parent.location) ? true : false;

, а затем загрузить или перенаправить на полный шаблон по мере необходимости.

0 голосов
/ 02 июня 2011

Поместите это на свои подстраницы:

<script type="text/javascript">
    if (window.location == window.parent.location)
    this.window.location = 'main_site.html';
</script>

- Дайте кредит этому @George Cummins за написание такой короткой условной оценки:)

Это перенаправит любое прямое поступлениетрафик на ваших страницах на главной странице.Я должен предупредить вас, однако, что iframes для отображения такого контента крайне неэффективны для SEO, и URL бесполезен с точки зрения отображения истории (кнопка «Назад» не будет работать) и совместного использования ссылок, потому что основной URL не меняется, пока вы нажимаете на кнопки меню.

0 голосов
/ 02 июня 2011

Наиболее логичным решением (для меня ...) было бы отсоединить музыкальный проигрыватель от страницы; запустите музыкальный проигрыватель в другом окне / вкладке. Вы можете включить музыкальный проигрыватель во всплывающее окно, когда посетитель вашего сайта запрашивает его / нажимает на него.

Другие решения, например определение наличия у родительского фрейма контента, приведут к созданию нескольких музыкальных проигрывателей, если кто-то откроет страницу в новой вкладке / окне.

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