ruta - url actual javascript




Obtener URL actual con jQuery? (20)

Estoy usando jQuery. ¿Cómo obtengo la ruta de la URL actual y la asigno a una variable?

URL de ejemplo:

http://localhost/menuname.de?foo=bar&number=0

Aquí hay un ejemplo para obtener la URL actual usando jQuery y JavaScript:

$(document).ready(function() {

    //jQuery
    $(location).attr('href');

    //Pure JavaScript
    var pathname = window.location.pathname;

    // To show it in an alert window
    alert(window.location);
});


$.getJSON("idcheck.php?callback=?", { url:$(location).attr('href')}, function(json){
    //alert(json.message);
});

En jstl podemos acceder a la ruta url actual usando pageContext.request.contextPath , si desea hacer una llamada ajax,

  url = "${pageContext.request.contextPath}" + "/controller/path"

Ej: en la página http://.com/questions/406192 esto dará http://.com/controller/path


Este es un tema más complicado de lo que muchos pueden pensar. Varios navegadores admiten objetos de ubicación de JavaScript integrados y parámetros / métodos asociados accesibles a través de window.location o document.location . Sin embargo, los diferentes tipos de Internet Explorer (6,7) no admiten estos métodos de la misma manera, ( window.location.href ? window.location.replace() no es compatible), por lo que tiene que acceder a ellos de forma diferente escribiendo condicional codifique todo el tiempo para tener acceso a Internet Explorer.

Por lo tanto, si tiene jQuery disponible y cargado, también puede usar jQuery (ubicación), como se mencionó en los demás, ya que resuelve estos problemas. Sin embargo, si está haciendo, por ejemplo, alguna redirección de geolocalización del lado del cliente a través de JavaScript (es decir, utilizando la API de Google Maps y los métodos de objetos de ubicación), es posible que no desee cargar la biblioteca jQuery completa y escribir su código condicional que comprueba cada versión de Internet Explorer / Firefox / etc.

Internet Explorer hace que el gato de codificación de front-end sea infeliz, pero jQuery es un plato de leche.


Esto devolverá la URL absoluta de la página actual usando JavaScript / jQuery .

  • document.URL

  • $("*").context.baseURI

  • location.href


Los 3 primeros más utilizados son

1. window.location.hostname 
2. window.location.href
3. window.location.pathname


Para obtener la URL de la ventana principal desde un iframe:

$(window.parent.location).attr('href');

NB: solo funciona en el mismo dominio


Puede registrar window.location y ver todas las opciones, solo para el uso de la URL:

window.location.origin

Para todo el uso del camino:

window.location.href

También hay ubicación. _ _

.host
.hostname
.protocol
.pathname

Si desea obtener la ruta del sitio raíz, use esto:

$(location).attr('href').replace($(location).attr('pathname'),'');

Si hay alguien que quiere concatenar la URL y la etiqueta hash, combine dos funciones:

var pathname = window.location.pathname + document.location.hash;

Simplemente agregue esta función en JavaScript y devolverá la ruta absoluta de la ruta actual.

function getAbsolutePath() {
    var loc = window.location;
    var pathName = loc.pathname.substring(0, loc.pathname.lastIndexOf('/') + 1);
    return loc.href.substring(0, loc.href.length - ((loc.pathname + loc.search + loc.hash).length - pathName.length));
}

Espero que te funcione.


Simplemente puede obtener su ruta utilizando js, window.location o location le dará el objeto de la URL actual

console.log("Origin - ",location.origin);
console.log("Entire URL - ",location.href);
console.log("Path Beyond URL - ",location.pathname);


Tengo esto para quitar las variables GET.

var loc = window.location;
var currentURL = loc.protocol + '//' + loc.host + loc.pathname;

Todos los navegadores soportan objeto de ventana de Javascript. Define la ventana del navegador.

Los objetos y funciones globales se convierten automáticamente en parte del objeto de la ventana.

Todas las variables globales son propiedades de objetos de ventana y todas las funciones globales son sus métodos.

Todo el documento HTML es una propiedad de ventana también.

Por lo tanto, puede usar el objeto window.location para obtener todos los atributos relacionados con url.

Javascript

console.log(window.location.host);     //returns host
console.log(window.location.hostname);    //returns hostname
console.log(window.location.path);         //return path
console.log(window.location.href);       //returns full current url
console.log(window.location.port);         //returns the port
console.log(window.location.protocol)     //returns the protocol

JQuery

console.log("host = "+$(location).attr('host'));
console.log("hostname = "+$(location).attr('hostname'));
console.log("path = "+$(location).attr('path')); 
console.log("href = "+$(location).attr('href'));   
console.log("port = "+$(location).attr('port'));   
console.log("protocol = "+$(location).attr('protocol'));   
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>


Ver purl.js Esto realmente ayudará y también puede usarse, dependiendo de jQuery. Úsalo así:

$.url().param("yourparam");

java-script proporciona muchos métodos para recuperar la URL actual que se muestra en la barra de direcciones del navegador.

URL de la prueba: http://.com/questions/5515310/is-there-a-standard-function-to-check-for-null-undefined-or-blank-variables-in/32942762?rq=1&page=2&tab=active&answertab=votes#32942762

resourceAddress.hash();
console.log('URL Object ', webAddress);
console.log('Parameters ', param_values);

Función:

var webAddress = {};
var param_values = {};
var protocol = '';
var resourceAddress = {

    fullAddress : function () {
        var addressBar = window.location.href;
        if ( addressBar != '' && addressBar != 'undefined') {
            webAddress[ 'href' ] = addressBar;
        }
    },
    protocol_identifier : function () { resourceAddress.fullAddress();

        protocol = window.location.protocol.replace(':', '');
        if ( protocol != '' && protocol != 'undefined') {
            webAddress[ 'protocol' ] = protocol;
        }
    },
    domain : function () {      resourceAddress.protocol_identifier();

        var domain = window.location.hostname;
        if ( domain != '' && domain != 'undefined' && typeOfVar(domain) === 'string') {
            webAddress[ 'domain' ] = domain;
            var port = window.location.port;
            if ( (port == '' || port == 'undefined') && typeOfVar(port) === 'string') {
                if(protocol == 'http') port = '80';
                if(protocol == 'https') port = '443';           
            }
            webAddress[ 'port' ] = port;
        }
    },
    pathname : function () {        resourceAddress.domain();

        var resourcePath = window.location.pathname;
        if ( resourcePath != '' && resourcePath != 'undefined') {
            webAddress[ 'resourcePath' ] = resourcePath;
        }
    },
    params : function () {      resourceAddress.pathname();

        var v_args = location.search.substring(1).split("&");

        if ( v_args != '' && v_args != 'undefined')
        for (var i = 0; i < v_args.length; i++) {
            var pair = v_args[i].split("=");

            if ( typeOfVar( pair ) === 'array' ) {
                param_values[ decodeURIComponent( pair[0] ) ] = decodeURIComponent( pair[1] );
            }
        }
        webAddress[ 'params' ] = param_values;
    },
    hash : function () {        resourceAddress.params();

        var fragment = window.location.hash.substring(1);
        if ( fragment != '' && fragment != 'undefined')
            webAddress[ 'hash' ] = fragment;        
    }
};
function typeOfVar (obj) {
      return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase();
}
  • protocolo « Web-browsers utilizan el protocolo de Internet siguiendo algunas reglas para la comunicación entre las aplicaciones WebHosted y el cliente web (navegador). (http = 80 , https (SSL) = 443 , ftp = 21, etc.)

EX: Con números de puerto predeterminados

<protocol>//<hostname>:<port>/<pathname><search><hash>
https://en.wikipedia.org:443/wiki/Pretty_Good_Privacy
http://.com:80/
  • (//) «Host es el nombre dado a un punto final (máquina en la que vive el recurso) en Internet. www..com - Dirección IP de DNS de una aplicación (OR) localhost: 8080 - localhost

Los nombres de dominio son los que se registran según las reglas y procedimientos del árbol del Sistema de nombres de dominio (DNS). Servidores DNS de alguien que administra su dominio con dirección IP para propósitos de direccionamiento. En la jerarquía del servidor DNS, el nombre de la raíz de stackoverlfow.com es com.

gTLDs      - com «  (OR) in « co « google

El sistema local tiene que mantener los dominios que no son PÚBLICOS en Archivos de Host. localhost.yash.com « localhsot - subdomain( web-server ), yash.com - maindomain( web-server ). myLocalApplication.com 172.89.23.777 ). myLocalApplication.com 172.89.23.777

  • (/) «La ruta proporciona información sobre el recurso específico dentro del host al que el cliente web desea acceder
  • (?) «Una consulta opcional es pasar una secuencia de pares atributo-valor separados por un delimitador (&).
  • (#) «Un fragmento opcional es a menudo un atributo de identificación de un elemento específico, y los navegadores web desplazarán este elemento a la vista.

Si el parámetro tiene una ?date=1467708674 entonces use.

var epochDate = 1467708674; var date = new Date( epochDate );

URL

URL de autenticación con nombre de usuario: contraseña, si usernaem / contraseña contiene el símbolo @
me gusta:

Username = `[email protected]`
password = `[email protected]`

entonces necesita codificar la URL como @ %40 . Refer...

http://my_email%40gmail.com:Yash%[email protected]_site.com

var path = location.pathname devuelve la ruta de la URL actual en jQuery. No hay necesidad de usar window .


window.location le dará la URL actual, y podrá extraer lo que quiera de ella ...


// get current URL

$(location).attr('href');
var pathname = window.location.pathname;
alert(window.location);

http://www.refulz.com:8082/index.php#tab2?foo=789

Property    Result
------------------------------------------
host        www.refulz.com:8082
hostname    www.refulz.com
port        8082
protocol    http:
pathname    index.php
href        http://www.refulz.com:8082/index.php#tab2
hash        #tab2
search      ?foo=789

var x = $(location).attr('<property>');

Esto funcionará solo si tienes jQuery. Por ejemplo:

<html>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js">
</script>
  $(location).attr('href');      // http://www.refulz.com:8082/index.php#tab2
  $(location).attr('pathname');  // index.php
</script>
</html>




path