Вопрос по url, javascript – Получить текущий URL с помощью JavaScript?
Все, что я хочу, это получить URL сайта. Не тот URL, который взят из ссылки. При загрузке страницы мне нужно иметь возможность получить полный, текущий URL-адрес веб-сайта и установить его как переменную для использования, как мне угодно.
window.location.href
.
Как указано выше,document.URL
doesn't update при обновленииwindow.location
, УвидетьMDN.
получить текущее местоположение URL с помощью хэш-тега используя:
JavaScript:
// Using href
var URL = window.location.href;
// Using path
var URL = window.location.pathname;
jQuery:
$(location).attr('href');
document.location.toString().toLowerCase();
Для хоста URL:
window.location
Способ получить текущее местоположение объектаwindow.location
.
Сравните это сdocument.location
, который первоначально только возвращал текущий URL в виде строки. Вероятно, чтобы избежать путаницы,document.location
был заменен наdocument.URL
.
И, все современные браузеры картуdocument.location
вwindow.location
.
На самом деле, для кросс-браузерной безопасности, вы должны использоватьwindow.location
скорее, чемdocument.location
.
Использование:
window.location.href
Как отмечено в комментариях, строка ниже работает, но она содержит ошибки для Firefox.
document.URL;
document.URL
свойство не обновляется послеwindow.location
на якорь (#), в то время какwindow.location.href
делает. Я собрал демо-версию здесь:jsfiddle.net/PxgKy Я не тестировал другие версии Firefox. Нет проблем с использованиемdocument.URL
были найдены в Chrome 20 и IE9.
window.location
для чтения и записи доступа кместоположение объекта связанный с текущим кадром. Если вы просто хотите получить адрес в виде строки только для чтения, вы можете использоватьdocument.URL
, который должен содержать то же значение, что иwindow.location.href
.
URL Info Access
JavaScript предоставляет вам множество способов для извлечения и изменения текущего URL, который отображается в адресной строке браузера. Все эти методы используютLocation
объект, который является собственностьюWindow
объект. Вы можете создать новыйLocation
объект, который имеет текущий URL следующим образом:
var currentLocation = window.location;
Basic URL Structure
<protocol>//<hostname>:<port>/<pathname><search><hash>
protocol: Specifies the protocol name be used to access the resource on the Internet. (HTTP (without SSL) or HTTPS (with SSL))
hostname: Host name specifies the host that owns the resource. For example,
www.stackoverflow.com
. A server provides services using the name of the host.port: A port number used to recognize a specific process to which an Internet or other network message is to be forwarded when it arrives at a server.
pathname: The path gives info about the specific resource within the host that the Web client wants to access. For example,
/index.html
.query: A query string follows the path component, and provides a string of information that the resource can utilize for some purpose (for example, as parameters for a search or as data to be processed).
hash: The anchor portion of a URL, includes the hash sign (#).
С этимиLocation
Свойства объекта, вы можете получить доступ ко всем этим компонентам URL и что они могут устанавливать или возвращать:
- href - the entire URL
- protocol - the protocol of the URL
- host - the hostname and port of the URL
- hostname - the hostname of the URL
- port - the port number the server uses for the URL
- pathname - the path name of the URL
- search - the query portion of the URL
- hash - the anchor portion of the URL
Я надеюсь, что вы получили свой ответ ..
window.location
, но свойства иhere we have an example: var stringPathName = window.location.pathname
.
full URL текущей страницы легко, используя чистый JavaScript. Например, попробуйте этот код на этой странице:
window.location.href;
// use it in the console of this page will return
// http://stackoverflow.com/questions/1034621/get-current-url-in-web-browser"
The window.location.href property returns the URL of the current page.
document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript</h2>
<h3>The window.location.href</h3>
<p id="root"></p>
</body>
</html>
Просто неплохо бы упомянуть и это:
Также, если вам нужен относительный путь, просто используйтеwindow.location.pathname
;
И если вы хотите получить имя хоста, вы можете использоватьwindow.location.hostname
;
И если вам нужно получить протокол отдельно, просто сделайтеwindow.location.protocol
Также, если ваша страница имеетhash
тег, вы можете получить это как:window.location.hash
Такwindow.locatation.href
обрабатывает все сразу ... в основном:
window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href;
//true
Также используяwindow
нет необходимости, если уже в области видимости окна ...
Итак, в этом случае вы можете использовать:
location.protocol
location.hostname
location.pathname
location.hash
location.href
Adding result for quick reference
window.location;
Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript",
ancestorOrigins: DOMStringList,
origin: "https://stackoverflow.com",
replace: ƒ, assign: ƒ, …}
document.location
Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript",
ancestorOrigins: DOMStringList,
origin: "https://stackoverflow.com",
replace: ƒ, assign: ƒ
, …}
window.location.pathname
"/questions/1034621/get-the-current-url-with-javascript"
window.location.href
"https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript"
location.hostname
"stackoverflow.com"
id этот код может помочь вам
$(".disapprove").click(function(){
var id = $(this).attr("id");
$.ajax({
url: "<?php echo base_url('index.php/sample/page/"+id+"')?>",
type: "post",
success:function()
{
alert("The Request has been Disapproved");
window.location.replace("http://localhost/sample/page/"+id+"");
}
});
});
Я использую AJAX здесь, чтобы отправить идентификатор и перенаправить страницу с помощьюwindow.location.replace, просто добавьте атрибутid=""
как указано.
затем вызвать функцию, которая принимает URL, переменную URL и печатает на консоли,
$(window).load(function(){
var url = window.location.href.toString();
var URL = document.URL;
var wayThreeUsingJQuery = $(location).attr('href');
console.log(url);
console.log(URL);
console.log(wayThreeUsingJQuery );
});