Windows location href открыть в новой вкладке

I have a JavaScript file from a third party developer. It has a has link which replaces the current page with the target. I want to have this page opened in a new tab. This is what I have so far: ...

I have a JavaScript file from a third party developer. It has a has link which replaces the current page with the target. I want to have this page opened in a new tab.

This is what I have so far:

if (command == 'lightbox') {
 location.href="https://support.wwf.org.uk/earth_hour/index.php?type=individual";
}

Can anyone help me out?

dreftymac's user avatar

dreftymac

30.8k26 gold badges117 silver badges180 bronze badges

asked Feb 28, 2011 at 12:22

iamjonesy's user avatar

iamjonesyiamjonesy

24.5k40 gold badges137 silver badges206 bronze badges

window.open(
  'https://support.wwf.org.uk/earth_hour/index.php?type=individual',
  '_blank' // <- This is what makes it open in a new window.
);

answered Feb 28, 2011 at 12:24

alex's user avatar

10

Pure js alternative to window.open

let a= document.createElement('a');
a.target= '_blank';
a.href= 'https://support.wwf.org.uk/';
a.click();

here is working example (stackoverflow snippets not allow to opening)

answered Dec 5, 2019 at 19:02

Kamil Kiełczewski's user avatar

Kamil KiełczewskiKamil Kiełczewski

80.3k29 gold badges352 silver badges327 bronze badges

6

If you want to use location.href to avoid popup problems, you can use an empty <a> ref and then use javascript to click it.

something like in HTML

<a id="anchorID" href="mynewurl" target="_blank"></a>

Then javascript click it as follows

document.getElementById("anchorID").click();

аlex dykyі's user avatar

answered Aug 15, 2014 at 14:50

andrew field's user avatar

7

You can open it in a new window with window.open('https://support.wwf.org.uk/earth_hour/index.php?type=individual');. If you want to open it in new tab open the current page in two tabs and then alllow the script to run so that both current page and the new page will be obtained.

Musa's user avatar

Musa

95.5k17 gold badges116 silver badges134 bronze badges

answered Feb 28, 2011 at 12:28

user616639's user avatar

user616639user616639

2132 gold badges5 silver badges9 bronze badges

1

usage of location.href will replace current url with new url i.e link in the same webpage.

To open a new tab you can use as below:

if (command == 'lightbox') {
 window.open("https://support.wwf.org.uk/earth_hour/index.php?type=individual", '_blank');
}

Abdulhakim Zeinu's user avatar

answered Jun 8, 2021 at 6:36

user3644678's user avatar

For example:

    $(document).on('click','span.external-link',function(){
        var t               = $(this), 
            URL             = t.attr('data-href');        
        $('<a href="'+ URL +'" target="_blank">External Link</a>')[0].click();

    });

Working example.

answered May 13, 2018 at 13:34

2

You can also open a new tab calling to an action method with parameter like this:

   var reportDate = $("#inputDateId").val();
   var url = '@Url.Action("PrintIndex", "Callers", new {dateRequested = "findme"})';
   window.open(window.location.href = url.replace('findme', reportDate), '_blank');

answered Jun 4, 2020 at 20:32

Primoshenko's user avatar

2

Ищешь данные URL сайта, тогда объект

window.location

как раз для тебя! Используй его свойства для получения информации об адресе текущей страницы или используй его методы для редиректа, перезагрузки некоторых страниц 💫

https://voiti-v-it.com/posts/76?filter=JS#2

window.location.origin → ‘https://voiti-v-it.com’
.protocol → ‘https:’
.host → ‘voiti-v-it.com’
.hostname → ‘voiti-v-it.com’
.port → »
.pathname → ‘posts/76’
.search → ‘?filter=JS’
.hash → ‘#2’
.href → ‘https://voiti-v-it.com/posts/76?filter=JS#2’

window.location.assign(‘url’)
.replace(‘url’)
.reload()
.toString()

Свойства window.location

window.location

.origin
Базовый URL (Протокол + имя хоста + номер порта)

.protocol
Протокол (http: или https)

.host
Доменное имя + порт

.hostname
Доменное имя

.port
Имя порта

.pathname
Строка пути (относительно хоста)

.search
Часть строки, которая следует после? (включая ?)

.hash
Часть строки, которая следует после # (якорь или идентификатор фрагмента)

.href
Полный URL

Разница между host и hostname

В моем примере выше ты заметишь, что

host

и

hostname

возвращают одно и то же значение. Так в чем же разница. Ну, это связано с номером порта. Давай взглянем.

URL без порта

https://voiti-v-it.com

window.location.host; // ‘voiti-v-it.com’
window.location.hostname; // ‘voiti-v-it.com’
window.location.port; // »

URL с портом

http://voiti-v-it.com:8080

window.location.host; // ‘voiti-v-it.com:8080’
window.location.hostname; // ‘voiti-v-it.com’
window.location.port; // ‘8080’

Таким образом,

host

будет содержать номер порта, тогда как

hostname

будет возвращать только имя хоста.

Как изменить свойства URL

Ты можешь не только вызвать свойства объекта

location

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

http://voiti-v-it.com:8080

window.location.host; // ‘voiti-v-it.com:8080’
window.location.hostname; // ‘voiti-v-it.com’
window.location.port; // ‘8080’

Вот полный список свойств, которые ты можешь изменить:

http://voiti-v-it.com:8080
window.location.host; // ‘voiti-v-it.com:8080’
window.location.hostname; // ‘voiti-v-it.com’
window.location.port; // ‘8080’

Единственное свойство, которое ты не можешь установить, это

window.location.origin

Это свойство доступно только для чтения.

Объект Location

window.location

возвращает объект

Location

который дает тебе информацию о текущем местоположении страницы. Ты также можешь получить доступ к объекту Location несколькими способами.

http://voiti-v-it.com:8080

window.location.host; // ‘voiti-v-it.com:8080’
window.location.hostname; // ‘voiti-v-it.com’
window.location.port; // ‘8080’

Объект доступен таким образом, потому что является глобальной переменной в браузере.

window.location vs location

Каждый из 4х свойств выше указывают на один и тот же объект

Location

Я лично предпочитаю

window.location

и на самом деле не буду использовать

location

Главным образом потому, что

location

читается больше как общий термин, и кто-то может случайно назвать свою переменную, которая переопределяет глобальную переменную. Взять, к примеру:

// https://www.samanthaming.com

location.protocol; // ‘https’

function localFile() {
const location = ‘/sam’;
return location.protocol;
// ❌ undefined
// локальная «location» преопределяет глобальную переменную
}

Я думаю, что большинство разработчиков знают, что

window

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

window.location

вместо

location

Вот мой личный порядок предпочтений:

// ✅
1. window.location // 🏆
2. document.location
// ❌
3. window.document.location // почему бы просто не использовать #1 or #2 😅
4. location // чувствуется слишком двусмысленно 😵

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

Методы window.location

window.location

.assign()
Навигация происходит по указанному URL

.replace()
Навигация происходит по указанному URL & и текущая страница удаляется из истории

.reload()
Перезагружает текущую страницу

.toString()
Returns the URL

window.location.toString

Вот определение из MDN

Этот метод возвращает USVString URL. Версия только для чтения

Location.href

Другими словами, ты можешь использовать его для получения значения

href

из

// https://voiti-v-it.com

window.location.href; // https://voiti-v-it.com

window.location.toString(); // https://voiti-v-it.com

Что касается использования, я не смог найти много информации о том, что лучше; но если ты это сделаешь, пожалуйста, поделись в комментах 😊. Я нашел тест производительности на разницу.

Один момент, который я хочу отметить в отношении этих тестов скорости, заключается в том, что они зависят от браузера. Различные браузеры и версии будут иметь разные результаты. Я использую Chrome, поэтому href вышел быстрее остальных. Так что я буду этим пользоваться. Также я думаю, что он читается более явно, чем

toString()

Совершенно очевидно, что

href

предоставит URL, тогда как

toString

выглядит как нечто, преобразуемое в строку.😅

assign vs replace

Оба эти метода помогут тебе перейти по другому URL. Разница в том, что

assign

сохранит твою текущую страницу в истории, поэтому твой пользователь может использовать кнопку «назад» для перехода к ней. Принимая во внимание метод

replace

он не сохраняет его истории. Это немного смущает, да? Меня тоже. Давай пройдемся по примерам.

Assign

1. Открыть новую вкладку
2. Перейти https://voiti-v-it.com (текущая страница)
3. Загрузить нвоую страницу 👉 `window.location.assign(‘https://www.w3schools.com’)`
4. Нажать «назад»
5. Вернемся на 👉 https://voiti-v-it.com

Replace

1. Открыть новую вкладку
2. Перейти https://voiti-v-it.com (текущая страница)
3. Загрузить нвоую страницу 👉 `window.location.assign(‘https://www.w3schools.com’)`
4. Нажать «назад»
5. Вернемся на 👉 чистую страницу

Текущая страница

Мне просто нужно подчеркнуть «текущая страница» в определении. Это страница прямо перед

assign

или

replace

1. Открыть новую вкладку
2. Перейти www.developer.mozilla.org
3. Перейти https://voiti-v-it.com 👈 это будет текущая страница
4. window.location.assign(‘https://www.w3schools.com’); // Перейдет к #3
4. window.location.replace(‘https://www.w3schools.com’); // Перейдет к #2

Как сделать редирект страницы

Теперь ты знаешь, что мы можем изменить свойства

window.location

присвоив значение с помощью

=

Точно так же существуют методы, к которым мы можем получить доступ для выполнения некоторых действий. Итак, что касается «как перенаправить/редиректить на другую страницу», то есть 3 способа.

// Установить свойство href
window.location.href = ‘https://voiti-v-it.com’;
// Использование Assign
window.location.assign(‘https://voiti-v-it.com’);
// Использование Replace
window.location.replace(‘https://voiti-v-it.com’);

replace vs assign vs href

Все три перенаправляют, разница связана с историей браузера.

href

и

assign

здесь одинаковы. Они сохранят твою текущую страницу в истории, а

replace

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

replace

Таким образом, вопрос сейчас:

href

vs

assign

Я считаю, что это личные предпочтения. Мне больше нравится

assign

потому что это метод, поэтому мне кажется, что я выполняю какое-то действие. Также есть дополнительный бонус в том, что его проще тестировать. Я писал много Jest-тестов, поэтому, используя метод можно просто замокать данные.

window.location.assign = jest.fn();
myUrlUpdateFunction();
expect(window.location.assign).toBeCalledWith(‘http://my.url’);

Но для тех, которые болеют за

href

для редиректа страницы. Я нашел тест производительности и он работает в моей версии Chrome быстрее. Опять же, тесты производительности варьируются в зависимости от браузера и разных версий, сейчас это может быть быстрее, но, возможно, в будущих браузерах всё может измениться.

Как это все появилось 👍

Ладно, я готов с вами поделиться как появилась эта шпаргалка. Я гуглил, как редиректить на другую страницу, и столкнулся с объектом

window.location

Иногда я чувствую, что разработчик является журналистом или детективом — для того, чтобы собрать всю доступную информацию, приходится много копаться и прочесывать разные источники. Честно говоря, я был ошеломлен материалами, они все были “о разном”, а я просто хотел всё из одного источника. Я не мог найти много полной информации, поэтому я подумал, а расскажу-ка я об этом в шпаргалке!

What is the difference between window.location.href and window.open () methods in JavaScript?

Kamil Kiełczewski's user avatar

asked Aug 16, 2011 at 11:51

masif's user avatar

1

window.location.href is not a method, it’s a property that will tell you the current URL location of the browser. Changing the value of the property will redirect the page.

window.open() is a method that you can pass a URL to that you want to open in a new window. For example:

window.location.href example:

window.location.href = 'http://www.google.com'; //Will take you to Google.

window.open() example:

window.open('http://www.google.com'); //This will open Google in a new window.

Additional Information:

window.open() can be passed additional parameters. See: window.open tutorial

answered Aug 16, 2011 at 11:55

James Hill's user avatar

James HillJames Hill

59.5k20 gold badges142 silver badges161 bronze badges

4

  • window.open will open a new browser with the specified URL.

  • window.location.href will open the URL in the window in which the code is called.

Note also that window.open() is a function on the window object itself whereas window.location is an object that exposes a variety of other methods and properties.

answered Aug 16, 2011 at 11:55

Tom's user avatar

TomTom

15.2k5 gold badges47 silver badges62 bronze badges

There are already answers which describes about window.location.href property and window.open() method.

I will go by Objective use:

1. To redirect the page to another

Use window.location.href. Set href property to the href of another page.

2. Open link in the new or specific window.

Use window.open(). Pass parameters as per your goal.

3. Know current address of the page

Use window.location.href. Get value of window.location.href property. You can also get specific protocol, hostname, hashstring from window.location object.

See Location Object for more information.

Community's user avatar

answered Sep 8, 2016 at 18:28

Somnath Muluk's user avatar

Somnath MulukSomnath Muluk

53.7k35 gold badges217 silver badges225 bronze badges

0

window.open is a method; you can open new window, and can customize it.
window.location.href is just a property of the current window.

Evan Donovan's user avatar

answered Aug 16, 2011 at 11:59

ngi's user avatar

ngingi

3781 gold badge4 silver badges16 bronze badges

window.open () will open a new window, whereas window.location.href will open the new URL in your current window.

answered Aug 16, 2011 at 11:52

Joseph Silber's user avatar

Joseph SilberJoseph Silber

211k59 gold badges359 silver badges290 bronze badges

2

The window.open will open url in new browser Tab

The window.location.href will open url in current Tab (instead you can use location)

Here is example fiddle (in SO snippets window.open doesn’t work)

answered Apr 8, 2019 at 15:41

Kamil Kiełczewski's user avatar

Kamil KiełczewskiKamil Kiełczewski

80.3k29 gold badges352 silver badges327 bronze badges

What is the difference between window.location.href and window.open () methods in JavaScript?

Kamil Kiełczewski's user avatar

asked Aug 16, 2011 at 11:51

masif's user avatar

1

window.location.href is not a method, it’s a property that will tell you the current URL location of the browser. Changing the value of the property will redirect the page.

window.open() is a method that you can pass a URL to that you want to open in a new window. For example:

window.location.href example:

window.location.href = 'http://www.google.com'; //Will take you to Google.

window.open() example:

window.open('http://www.google.com'); //This will open Google in a new window.

Additional Information:

window.open() can be passed additional parameters. See: window.open tutorial

answered Aug 16, 2011 at 11:55

James Hill's user avatar

James HillJames Hill

59.5k20 gold badges142 silver badges161 bronze badges

4

  • window.open will open a new browser with the specified URL.

  • window.location.href will open the URL in the window in which the code is called.

Note also that window.open() is a function on the window object itself whereas window.location is an object that exposes a variety of other methods and properties.

answered Aug 16, 2011 at 11:55

Tom's user avatar

TomTom

15.2k5 gold badges47 silver badges62 bronze badges

There are already answers which describes about window.location.href property and window.open() method.

I will go by Objective use:

1. To redirect the page to another

Use window.location.href. Set href property to the href of another page.

2. Open link in the new or specific window.

Use window.open(). Pass parameters as per your goal.

3. Know current address of the page

Use window.location.href. Get value of window.location.href property. You can also get specific protocol, hostname, hashstring from window.location object.

See Location Object for more information.

Community's user avatar

answered Sep 8, 2016 at 18:28

Somnath Muluk's user avatar

Somnath MulukSomnath Muluk

53.7k35 gold badges217 silver badges225 bronze badges

0

window.open is a method; you can open new window, and can customize it.
window.location.href is just a property of the current window.

Evan Donovan's user avatar

answered Aug 16, 2011 at 11:59

ngi's user avatar

ngingi

3781 gold badge4 silver badges16 bronze badges

window.open () will open a new window, whereas window.location.href will open the new URL in your current window.

answered Aug 16, 2011 at 11:52

Joseph Silber's user avatar

Joseph SilberJoseph Silber

211k59 gold badges359 silver badges290 bronze badges

2

The window.open will open url in new browser Tab

The window.location.href will open url in current Tab (instead you can use location)

Here is example fiddle (in SO snippets window.open doesn’t work)

answered Apr 8, 2019 at 15:41

Kamil Kiełczewski's user avatar

Kamil KiełczewskiKamil Kiełczewski

80.3k29 gold badges352 silver badges327 bronze badges

«document.location.href» — это один из методов «document.location»

Подробно о «document.location.href»

  1. Что такое document.location.href
  2. Пример использования document.location.href
  3. Второй пример document.location.href
  4. Открыть document.location.href в новой вкладке
  1. Что такое document.location.href

    Дадим определение : «Что такое document.location.href«:

    document.location.href — возвращает текущий url(адрес) страницы

    Синтаксис document.location.href

    document.location.href

    Вывести на экран document.location.href

    Для того, чтобы вывести на экран document.location.href вам понадобится:

    Получим код document.location.href

    <script> document.write ( document.location.href );</script>



    И вы получите(обращаю ваше внимание!):

  2. Пример использования document.location.href

    Для чего можно использовать «document.location.href«… ну например, для перехода по ссылке.

    Для этого вам понадобится:

    Тег ссылка.

    Внутри тега помещаем onclick

    В onclick помещаем «document.location.href» + равно + адрес.

    Соберем весь код:

    Код использования document.location.href

    <a onclick="document.location.href = 'https://dwweb.ru/';">dwweb.ru</a>

    Живой пример использования document.location.href

    Разместим выше приведенный код использования «document.location.href» — прямо здесь:

  3. Второй пример document.location.href

    Для того, чтобы продемонстрировать второй пример использования document.location.href мне понадобится :

    Теория, код, пример из выше приведенного пункта.

    Только вместо onclick пишем «javascript:»

    Соберем весь код:

    Код document.location.href

    <a href='javascript: document.location.href = "https://dwweb.ru/"'>пример document.location.href</a>

    Пример использования document.location.href

    обращаю ваше внимание!

    Нужно обратить ваше внимание на то, что возвращает document.location.href…

    Давайте сделаем вот такой пример ссылки(со всяким мусором после адреса…), document.location.href вернет всю эту порнуху — нажми по ссылке :

    <a href=https://dwweb.ru/document_location_href.html?example=1#result>текст_ссылки</a>

    Проверь возвращаемое значение document.location.href.

  4. Открыть document.location.href в новой вкладке

    Как можно открыть «document.location.href в новой вкладке «…?

    Ответ никак! document.location.href в новой вкладке открыть нельзя !

    «document.location.href в новой вкладке» — открыть нельзя!

    Что можно сделать?
    Можно заменить document.location.href на window.open

    Результат работы кода при замененном document.location.href

    <div onclick="window.open('https://marrex.ru/', '_blank');" style="cursor:pointer">Нажми на меня</div>

Можете не благодарить, лучше помогите!

COMMENTS+

 
BBcode


7 ответов

window.location.href — это не метод, это свойство, которое сообщит вам текущее местоположение URL-адреса браузера. Изменение значения свойства будет перенаправлять страницу.

window.open() — это метод, с помощью которого вы можете передать URL-адрес, который вы хотите открыть в новом окне. Например:

Пример window.location.href:

window.location.href = 'http://www.google.com'; //Will take you to Google.

Пример window.open():

window.open('http://www.google.com'); //This will open Google in a new window.

Дополнительная информация:

window.open() можно передать дополнительные параметры. См.: учебник window.open

James Hill
16 авг. 2011, в 12:03

Поделиться

  • window.open откроет новый браузер с указанным URL.

  • window.location.href откроет URL-адрес в окне, в котором вызывается код.

Обратите внимание, что window.open() является функцией самого объекта окна, тогда как window.location является объектом, который предоставляет различные другие методы и свойства.

Tom
16 авг. 2011, в 13:12

Поделиться

window.open — метод; вы можете открыть новое окно и настроить его.
window.location.href — это просто свойство текущего окна.

ngi
16 авг. 2011, в 13:56

Поделиться

Уже есть ответы, которые описывают свойство window.location.href и window.open().

Я буду использовать Objective use:

1. Чтобы перенаправить страницу на другую

Используйте window.location.href. Установите свойство href на href другой страницы.

2. Открыть ссылку в новом или конкретном окне.

Используйте window.open(). Передайте параметры согласно вашей цели.

3. Знать текущий адрес страницы

Используйте window.location.href. Получите значение свойства window.location.href. Вы также можете получить конкретный протокол, имя хоста, hashstring из объекта window.location.

Для получения дополнительной информации см. Объект местоположения.

Somnath Muluk
08 сен. 2016, в 19:16

Поделиться

window.open () откроет новое окно, а window.location.href откроет новый URL-адрес в текущем окне.

Joseph Silber
16 авг. 2011, в 12:35

Поделиться

window.open откроет URL в новой вкладке браузера

window.location.href откроет URL в текущей вкладке (вместо этого вы можете использовать location)

Вот пример скрипта (в SO фрагментах window.open не работает)

Kamil Kiełczewski
08 апр. 2019, в 15:50

Поделиться

Это откроет вашу ссылку в том же окне

window.location.href = 'http://www.google.com'; 

Откроется ваша ссылка в новой вкладке

window.open('http://www.google.com');

Akitha_MJ
21 янв. 2019, в 08:07

Поделиться

Ещё вопросы

  • 1localhost: 8080 / lio / отлично работает в моем apachtomcat. но когда я ставлю <мой IP>: 8080 / lio / я получаю ошибку
  • 0ошибка при применении вида фильтрации во временной области
  • 0Как заставить объект PHP возвращать не-строку?
  • 0Вызовите функцию jquery из html для разбора
  • 0Скрыть всю таблицу, когда тд
  • 0SFML — расчет сна
  • 0AngularJS — Использование typeahead с ngTagsInput
  • 0проблема при установке старой библиотеки 2005 BOOST
  • 0Перенаправление на определенную веб-страницу после того, как пользователи выбирают из выпадающего меню форму и php
  • 0Какой может быть лучший подход для хранения 2D массива объектов?
  • 0Переход от строки к массиву в AngularJS
  • 0Как я могу объединить строку параметра в функции javascript на строку в добавленном HTML?
  • 0Как получить топ класс из базового класса
  • 1Десериализация списка элементов с аннотацией @Text в Simple
  • 1Android: HttpClient POST: NullPointerException
  • 1Формат даты и времени / Шаблоны в классе Java / SimpleDateFormat
  • 0PHP открывает файл в кодировке Unicode с другой страницы
  • 1C # 5.0 в двух словах
  • 0вычисление коэффициентов w для фильтра iir
  • 1Сбой pytest: не удается найти запрошенный URL
  • 1Удалить жесты из RatingBar
  • 0Загрузка дополнительных сообщений не работает
  • 1Хранение чрезвычайно больших массивов
  • 0Как отправить динамически созданные входные (или текстовые) значения в iframe и показать его как HTML внутри iframe?
  • 1Как закрыть обработчик событий?
  • 0CSS: недискретная минимальная высота по отношению к родителю, но также может расширить родительский
  • 0MYSQL определяет приоритетность записи, выбранной GROUP BY
  • 1Регулярное выражение для сопоставления 3 или 4 выражений части с разделителями пробела и пробела
  • 0MIN / MAX работает в JPA Spring Data с Amazon Aurora DB (запрос наибольшего числа групп)
  • 1Python, инициализировать атрибут класса в цикле
  • 0AngularJS $ компилировать с помощью jQuery clone ()
  • 0Нечеткое совпадение даты
  • 0opencart получить общую цену в корзине при выбранном способе оплаты
  • 1создать наследовать переопределить ODOO
  • 0JQuery / JS для цикла, добавление переменной с другим конечным номером для разделения Div
  • 1D3 js длина ссылки между узлами изображения
  • 0Список функциональности c ++
  • 1Android — Настройка обнаружения коллизий растровых изображений после поворота по матрице
  • 0Разработка текстового редактора на PHP
  • 0Класс Wrapper для type_info
  • 1RallyRestApi.dll не распознает объект RallyRestApi
  • 0Как должны быть подготовлены данные для параметризованных тестов?
  • 0$ ionicHistory.clearHistory очищает историю, но переходит к предыдущему представлению, когда hardwareBackButton нажал на Android?
  • 0Добавить разделы в существующую таблицу на основе текущей даты
  • 0Вопрос специализации шаблона Alias?
  • 1Абсолютное центрирование в макете Android
  • 1Питон Панды | Создайте отдельные списки для каждого из столбцов
  • 1Как передать ресурс изображения из моего приложения в другое?
  • 0Низкий TPS при использовании Virtualbox + Ubuntu + Nginx + PHP-FPM + Silex
  • 0Бесконечный цикл с обработкой файлов и istringstreams

Старый

28.05.2013, 18:09

Интересующийся

Отправить личное сообщение для Den_Ab

Посмотреть профиль

Найти все сообщения от Den_Ab

 

Регистрация: 28.05.2013

Сообщений: 19

onclick=»location.href как перенаправить в новую вкладку

Как можно перенаправить … ммм … код типа

<div onclick=»location.href=’http://сайт.ру;» id=»header» Style=»cursor: pointer;»>

в новое окно.

Сей код стоит на банере, который является фоном для всей шапки сайта, надо чтобы тыкая по ней человек переходил не в этом же окне на новый сайт, а открывалась новая вкладка с новым сайтом.

По типу target=»_blank».

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

Ответить с цитированием

Старый

29.05.2013, 03:23

Аватар для ruslan_mart

Профессор

Отправить личное сообщение для ruslan_mart

Посмотреть профиль

Найти все сообщения от ruslan_mart

 

Регистрация: 30.04.2012

Сообщений: 2,932

<div onclick="window.open('http://site.ru')"></div>

Ответить с цитированием

Старый

29.05.2013, 10:30

без статуса

Отправить личное сообщение для Deff

Посмотреть профиль

Найти все сообщения от Deff

 

Регистрация: 25.05.2012

Сообщений: 8,219

<div id="header" style="position:relative;">
<a href="http://site.ru" target="_blank"><img src="/blank.png" style="position:absolute;width=100%;height:100%"></a>
</div>

/blank.png — пиксельная прозрачка



Последний раз редактировалось Deff, 30.05.2013 в 20:38.

Ответить с цитированием

Старый

30.05.2013, 00:05

Интересующийся

Отправить личное сообщение для Den_Ab

Посмотреть профиль

Найти все сообщения от Den_Ab

 

Регистрация: 28.05.2013

Сообщений: 19

Ruslan_xDD, спасибо, Ваша подсказка очень хорошо подошла. Но сразу возник еще вопрос , а как сделать ,чтобы при нажатии перекидывало не новое окно, а человек оставался в прежнем, а другая вкладка просто открывалась?

Ответить с цитированием

Старый

30.05.2013, 01:47

без статуса

Отправить личное сообщение для Deff

Посмотреть профиль

Найти все сообщения от Deff

 

Регистрация: 25.05.2012

Сообщений: 8,219

Den_Ab,
Проще сделать чтобы текущая вкладка стала с новым адресом, а перекидывало по ссылке в новую вкладку с текущей страницей, хотя можно пробовать и в коде от Ruslan_xDD, сохранить фокус на текущей вкладке…
Хотя имхо оба способа изврат, — типично по клику на лого перекидывает на главную в текущем окне

Ответить с цитированием

Старый

30.05.2013, 20:01

Интересующийся

Отправить личное сообщение для Den_Ab

Посмотреть профиль

Найти все сообщения от Den_Ab

 

Регистрация: 28.05.2013

Сообщений: 19

А как это сделать?
И вылезла еще проблема, что при тыке по лого тоже перекидывает на новый сайт, будто лого не активно.

Ответить с цитированием

Старый

30.05.2013, 20:02

Интересующийся

Отправить личное сообщение для Den_Ab

Посмотреть профиль

Найти все сообщения от Den_Ab

 

Регистрация: 28.05.2013

Сообщений: 19

точнее не так. При тыке на лого, страница обновляется, но и открывается страница в новом окне. Как это убрать?

Ответить с цитированием

Старый

30.05.2013, 20:38

без статуса

Отправить личное сообщение для Deff

Посмотреть профиль

Найти все сообщения от Deff

 

Регистрация: 25.05.2012

Сообщений: 8,219

Den_Ab,
Посколь вопрос сформулирован не полно( пост 7) и в личке тоже
Привожу пример для типового Варианта — клик на лого — переход на главную в текущей вкладке, без всяких иных открытий

<div id="header" style="position:relative;">
<a href="http://site.ru"><img src="/blank.png" style="position:absolute;width=100%;height:100%"></a>
</div>

Ответить с цитированием

Старый

30.05.2013, 20:54

Интересующийся

Отправить личное сообщение для Den_Ab

Посмотреть профиль

Найти все сообщения от Den_Ab

 

Регистрация: 28.05.2013

Сообщений: 19

не работает. Лого съезжает вниз под баннер, сверху слева появляется контур прозрачного прямоугольника и ссылка вообще не работает.

Может можно как — то модернизировать код Ruslan_xDD, чтобы он не распространялся на область лого в хедере?

Ответить с цитированием

Старый

30.05.2013, 21:23

без статуса

Отправить личное сообщение для Deff

Посмотреть профиль

Найти все сообщения от Deff

 

Регистрация: 25.05.2012

Сообщений: 8,219

сверху слева появляется контур прозрачного прямоугольника

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

Сообщение от Deff

/blank.png — пиксельная прозрачка

Ответить с цитированием

На этом уроке мы познакомимся с объектом location, который может использоваться для получения или изменения текущего адреса страницы (URL).

Объект location — это один из дочерних объектов window, который отвечает за адресную строку окна или вкладки браузера. Доступ к данному объекту осуществляется как к свойству объекта window, т.е. через точку.


window.location

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

Свойства объекта location

Свойства объекта location:

  • hash — устанавливает или возвращает якорную часть (#) URL;
  • host — устанавливает или возвращает имя хоста и номер порта URL;
  • hostname — устанавливает или возвращает имя хоста URL;
  • href — устанавливает или возвращает содержимое URL;
  • origin — возвращает протокол, имя хоста и номер порта URL;
  • pathname — устанавливает или возвращает часть URL, содержащей путь;
  • port — устанавливает или возвращает номер порта URL;
  • protocol — устанавливает или возвращает протокол URL;
  • search — устанавливает или возвращает часть URL, содержащей строку с параметрами (?параметр1=значение1&параметр2=значение2&…);

В качестве примера рассмотрим следующую адресную строку (URL):

JavaScript - Объект location

Примечание: Изменение URL или какой либо её части с помощью свойств объекта location приводит к немедленному переходу к этому URL в текущем окне, или в том окне или вкладке браузера, для которого этот объект был вызван.

Например, изменить href на http://itchief.ru для текущего окна:

window.location.href = "http://itchief.ru";
//для текущего окна "window." можно опустить
location.href = "http://itchief.ru";
//кроме этого свойство href тоже можно опустить, т.к. location == location.href
location = "http://itchief.ru";

Например, изменить href для окна с именем myWindow:

//откроем новое окно с помощью метода JavaScript open()
var myWindow = window.open("","","height=300,width=400");
//изменим location окна, идентификатор которого хранится в myWindow
myWindow.location.href = "http://itchief.ru";

Например, вывести на экран все свойства и методы объекта location и их значения для текущей веб-страницы.

<div id="propertiesLocation" class="alert alert-warning"></div>

<script>
  var stringPropertiesLocation = "";
  for (var property in location)
  {
    stringPropertiesLocation += "Свойство/метод: <strong>" + property + "</strong>. ";
    stringPropertiesLocation += "Значение: <strong>" + location[property] + "</strong> ";
    stringPropertiesLocation += "<strong>Тип: </strong>" + typeof location[property]; 
    stringPropertiesLocation += "<br />";
  }
  document.getElementById("propertiesLocation").innerHTML = stringPropertiesLocation;
</script>

Методы объекта location

Методы:

  • assign() — загружает новый документ в текущее окно (вкладку) браузера или в то окно для которого этот метод был вызван.
  • reload() — перезагружает текущий документ. Метод reload() имеет один необязательный параметр булевского типа. Если в качестве параметра указать значение true, то страница будет принудительно обновлена с сервера. А если параметр не указывать или использовать в качестве параметра значение false, то браузер может обновить страницу, используя данные своего кэша. Метод reload() «имитирует» нажатие кнопки обновить в браузере.
  • replace() — заменяет текущий документ с помощью нового документа, URL которого указан в качестве параметра.

Рассмотрим следующие примеры:

1. При нажатии на ссылку загрузим в 1 фрейм страницу http://nigma.ru/:

<script>
  function loadNigma() {
    window.frames[0].location.assign("http://nigma.ru/");
  }
</script>
...
<!-- Загрузить URL http://yandex.ru в 1 фрейм -->
<a href="javascript:loadNigma()">Загрузить nigma во фрейм</a>
<hr />
<iframe width="500" height="400"></iframe>

2. Откроем новое окно, в котором будем управлять адресной строкой с помощью методов объекта location:

<script>
  let newWindow;
  function openWindow() {
    if (!newWindow) {
      newWindow = window.open('https://itchief.ru/', '', 'width=400,height=500');
      newWindow.focus();
    } else {
      newWindow.focus();
    }
  }
  function assignWindow() {
    if (newWindow) {
      newWindow.location.assign('https://itchief.ru/javascript/');
      newWindow.focus();
    }
  }
  function replaceWindow() {
    if (newWindow) {
      newWindow.location.replace('https://itchief.ru/html-and-css/');
      newWindow.focus();
    }
  }
</script>

<ul>
  <li><a href="javascript:openWindow()">Создать окно «https://itchief.ru/»</a></li>
  <li><a href="javascript:assignWindow()">Загрузить «https://itchief.ru/javascript/»</a></li>
  <li><a href="javascript:replaceWindow()">Заменим страницу на «https://itchief.ru/html-and-css/»</a></li>
</ul>

На чтение 2 мин. Опубликовано 18.02.2021

Рано или поздно встаёт вопрос о работе с ссылками на ресурсы – URLами. Прежде чем переходить к встроенным методам JavaScriptпри работе с «урлами», давайте разберемся, из чего они состоят.

Строение URL

Работа с URL в JavaScript

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

Получить адрес страницы

JavaScript предоставляет свойство location глобального объекта document для работы с url:

document.location.href// вернет полный url страницы
document.location.protocol// вернет протокол страницы
document.location.hash// вернет hash страницы
document.location.search// вернет поисковой запрос URL-а

Обратите внимание: каждая часть URL возвращается в виде строки!

Получить адрес с помощью JQuery можно с помощью объекта location:

$(location).attr(‘href’);

В метод attr мы передаем свойство объекта location href, тем самым получаем полный URL.

Открыть новую страницу

Метод объекта windowпод названием open открывает новую страницу:

window.open(url,windowName,[windowParameters]);

  • url – ссылка на открываемую страницу
  • window Name – в какой вкладке открывать новую страницу
  • объект window Parameters необязательный, с его помощью можно указать параметры открываемого окна – например, высоту и ширину.

Пара практических примеров:

window.open(«http://site.ru/»,»_self»);// открываем окно в текущей вкладке
window.open(«http://site.ru/»,»_blank»);// открываем окно в новой вкладке

Переадресации страницы на JavaScript

На помощь спешит все тот же метод location объекта document, а точнее его свойство replace. В качестве параметра принимает строку URL, на которую будет произведена переадресация:

window.location.replace(‘http://hostname.ru’);

Перезагрузка страницы на JavaSscript

На этот раз пользуемся встроенным методом поля location, но уже объекта window:

window.location.reload()

Создание URL и получение его фрагментов

Из коробки JavaScript предлагает встроенный класс URL. Он предоставляет методы работы с частями URL-адреса, рассмотренного в пункте выше. Рассмотрим синтаксис создания объекта URL:

leturl=newURL(url,[base])

Рассмотрим параметры конструктора URL:

  1. url – непосредственно URL-адрес, строка
  2. base – «базовый урл»: если указать, то url будет относительно него

leturl=new URL(‘https://hostname/url?query=JavaScript’);

alert(url.protocol);// https:
alert(url.host);// hostname
alert(url.pathname);// /url

Понравилась статья? Поделить с друзьями:
  • Windows loading files при установке очень долго
  • Windows loader скачать бесплатно для windows 7 торрент
  • Windows management framework 4 for windows 7
  • Windows loader скачать бесплатно для windows 7 максимальная 64 bit
  • Windows malicious software removal tool x64 что это