Відповіді:
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 учебник
window.location.href
це властивість, а не метод, але Internet Explorer (принаймні, версія 10) дозволяє вам ставитися href
і до методу. Я бачив, як це працює, лише в IE10, на одній сторінці, яку я використав. Ось, мабуть, тому запитувач викликав href
метод. Дивіться питання про незрівнянність IE з window.location.href . Але так, краще використовувати href
як властивість, яка буде працювати в будь-якому браузері, включаючи IE .
window.location.href
так само. Зрештою, новіші версії iE, як правило, отримують більше стандартів, не менше. Тож якщо IE10 все ще порушує стандарт, то, ймовірно, це робили і старіші версії.
window.open
відкриє новий браузер із вказаною URL-адресою.
window.location.href
відкриє URL-адресу у вікні, в якому викликається код.
Зауважте також, що window.open()
це функція для самого об'єкта вікна, тоді window.location
як це об'єкт, який розкриває безліч інших методів та властивостей .
window.open - метод; ви можете відкрити нове вікно та зможете його налаштувати. window.location.href - це лише властивість поточного вікна.
Вже є відповіді, в яких описано властивість window.location.href та метод window.open () .
Я піду за цільовим використанням:
Використовуйте window.location.href. Встановіть властивість href на href іншої сторінки.
Використовуйте window.open (). Передайте параметри відповідно до вашої мети.
Використовуйте window.location.href. Отримайте значення властивості window.location.href. Ви також можете отримати конкретний протокол, ім'я хоста, хешстриг від об’єкта window.location.
Див Розташування об'єкта для отримання додаткової інформації.
window.open ()
відкриє нове вікно, тоді як window.location.href
відкриє нову URL-адресу у вашому поточному вікні.
window.open
Відкриється URL в новому браузері Tab
window.location.href
Відкриється адреса в поточній вкладці (замість цього ви можете використовувати location
)
Ось приклад скрипки (у фрагментах SO window.open не працює)