Document location href в новом окне

В этой статье мы покажем, как можно организовать перенаправление со страницы, используя JavaScript location . Неожиданные перенаправления считаются очень раздражающими с точки зрения пользователей, поскольку они отрицательно влияют на общее впечатление. Например, если вы перенаправляете пользователей на другой сайт сразу после их перехода на ваш. Также, если вы направите на постороннюю страницу по таймеру или после того, как они совершили определенное действие. Это приведет к тому, что пользователь захочет сразу же покинуть ваш сайт.

Кроме этого поисковые системы не жалуют ресурсы, использующие переадресацию, особенно если они вводят пользователей в заблуждение. Но существуют случаи, когда перенаправление может быть полезно. Поэтому мы оставляем за вами принятие решения, использовать переадресацию или нет.

Методы переадресации JavaScript

В JavaScript window location или объект location используется, чтобы получить информацию о местоположении текущей веб-страницы ( документа ), а также для его изменения. Ниже приведен список способов, которые могут быть использованы для реализации переадресации JavaScript :

Хотя приведенные выше строки JavaScript кода выполняют схожую работу, у них есть небольшие отличия. Например, если вы используете перенаправление top.location внутри элемента iframe , то это принудительно перенаправит на главное окно. Еще один момент, о котором стоит помнить: location.replace() заменяет текущий документ, удаляя его из истории и делая его недоступным с помощью кнопки « Назад » в браузере.

Для реализации кроссбраузерности мы рекомендуем использовать следующий код JavaScript windows location :

Также вы можете зайти на эту страницу, чтобы подробнее узнать, как работает window.location .

Читайте также:  Что за трек играет в видео

Переадресация JavaScript: перенаправление при загрузке

Чтобы перенаправить пользователя на другой веб-сайт сразу же после открытия вашего сайта, можно использовать следующий код вверху вашей страницы, внутри элемента . Или, если вы используете отдельный .js файл , поместите следующий код в этот файл и не забудьте сослаться на него в заголовке вашей страницы:

Просто замените URL-адрес из примера на тот адрес, куда вы хотите перенаправлять. Следует отметить, что при этом виде переадресации, посетители вообще не увидят вашу веб-страницу и будут моментально перенаправлены на целевой адрес.

Переадресация JavaScript: перенаправление после определенного периода времени

Чтобы перенаправить пользователя на другой сайт после определенного периода времени, можно использовать следующий код:

Функция JavaScript location href , приведенная выше, перенаправит пользователя со страницы через 3 секунды после полной загрузки. Вы можете изменить значение 3000 ( 3 x 1000 в миллисекундах ) на свое усмотрение.

Переадресация JavaScript: перенаправление со страницы после события или действия пользователя

Иногда нужно отправить пользователя на другую страницу после определенного события или совершенного действия. В таких случаях можно использовать проверку условия или закрепить за элементом событие для выполнения переадресации. Рассмотрим два следующих примера:

Приведенный выше код JavaScript document location href выполнит перенаправление, если условие верно:

Приведенный выше код выполнит перенаправление, когда пользователь нажмет на элемент #button .

Так работает переадресация в JavaScript . Надеемся, эти примеры помогут вам в организации переадресации веб-страниц.

Данная публикация представляет собой перевод статьи « JavaScript Redirect: How to Redirect a Web Page with JavaScript » , подготовленной дружной командой проекта Интернет-технологии.ру

Как по ссылке открыть страницу в новой вкладке знают все. Добавляем в ссылку атрибут target="_blank" и радуемся. А вот по клику на кнопке открыть страницу в новой вкладке уже чуть сложнее. Ну нет у кнопки атрибута target.

На днях переносил наши корпоративные самописные сайты на новый хостинг и пришлось в коде сайтов вносить некоторые изменения. В ходе этой работы наткнулся на вот такую задачу — Как по клику на кнопке открыть страницу в новой вкладке. Саму по себе эту задачу я решил уже очень давно, много лет назад, но поскольку в то время я, можно сказать, на этих сайтах и учился web-программированию, то задача, как я убедился была решена не самым оптимальным образом. Менялся дизайн, наполнение, но кодинг в основном оставался прежним. А вот теперь, увидев этот код, я его быстренько оптимизировал, а заодно решил поделиться способом. Ведь многие пытаются что-то сами «прикрутить» к своим сайтам и вполне возможно, что статья кому-то и пригодится.

Читайте также:  Драйвера для материнской платы asus p5k

В случае с ссылками действительно всё просто.

откроет указанную страницу в текущем окне, а

откроет уже в новой вкладке.

Как по клику на кнопке открыть страницу в новой вкладке?

Во-первых, чтобы вообще что-либо открыть по клику на кнопке, которая к тому-же находится не в блоке формы, а сама по себе, надо использовать метод кнопки OnClick.

Например вот так:

В данном случае страница partners.php откроется в текущем окне браузера. Но бывает что надо открыть какую-то страницу в новом окне или вкладке. Как быть? В конструкцию Почему это решение не является оптимальным

Дело в том, что несколько позже мне понадобилось открывать ещё одну ссылку таким-же образом в новой вкладке. Я, конечно пошёл уже проторенным путём и быстренько дорисовал ещё одну функцию JavaScript, аналогичную первой. Но потом возникла потребность ещё в одной такой-же кнопке.

По итогу код стал выглядеть примерно так:

Получалось, что на каждую кнопку писалась своя отдельная функция. Не оптимально. Не элегантно. Всё, конечно работало, но где поэзия кода?

Оптимальное решение

Зачем раздувать JavaScript, когда можно всё решить одной единственной функцией? А вдруг мне понадобится добавить ещё 5 таких вот кнопок? Поэтому решение тут другое. Функция JavaScript одна, а каждая кнопка передаёт ей параметром нужный URL.

Окончательно код теперь выглядит так:

Как видите, кнопка передаёт параметром URL, а функция его принимает и открывает в новой вкладке. При этом код JavaScript намного уменьшился.

А можно и ещё проще

Да, отдельный JavaScript можно и не использовать. Все современные браузеры поддерживают некоторые скриптовые элементы и можно просто их использовать в коде своей кнопки.

Выглядит это примерно так:

Читайте также:  Мейзу пей на про 5

Как видите, использование в OnClick команды window.open с нужной ссылкой — откроет её в новой вкладке. Если использовать этот вариант, то больше ничего не надо. Сам я столкнулся с такой необходимостью буквально сегодня, поэтому и решил дополнить статью этим вариантом.

Вот, собственно и всё. Теперь Вы знаете как по клику на кнопке открыть страницу в новой вкладке. Если кому-то это пригодится — пользуйтесь.

Я посылаю HTML письмо от php. Тело завернуто в двойные кавычки ( " ). Как добавить событие onclick для кнопки и ссылку в двойных кавычках?

Как мне это сделать onclick=’window.location.href=»’

Решение

Используйте косую черту

Другие решения

В качестве альтернативы экранированию двойных кавычек с в строке вы можете просто использовать отдельную строку для хранения вашей подстроки. то есть.

Ты можешь использовать синтаксис heredoc что означает, что вам не нужно беспокоиться о том, чтобы избежать двойных кавычек или же одинарные кавычки.

Или вы можете пропустить запись навязчивый JavaScript в целом, и ваша проблема исчезнет.

написать функцию onclick и переместить ваше местоположение с помощью этой функции.