window.location
uzyskać niezdefiniowane na wszystkich właściwości.
Oto moja konsola:
window.location
uzyskać niezdefiniowane na wszystkich właściwości.
Oto moja konsola:
mogę potwierdzić to (wersja 6.0 (8536.25)). Wygląda na to, że jestem błędem Safari, o ile wiem.
Testowane na jsbin (http://jsbin.com/enugoj/1/):
console.log(window.location);
console.log(window.location.pathname);
Wyniki w konsoli Safari:
Location
ancestorOrigins: undefined
hash: undefined
host: undefined
hostname: undefined
href: undefined
origin: undefined
pathname: undefined
port: undefined
protocol: undefined
search: undefined
__proto__: LocationPrototype
/enugoj/1
Wyniki w Chrome (wersja 21.0.1180.89) :
Location
ancestorOrigins: DOMStringList
assign: function() { [native code] }
hash: ""
host: "jsbin.com"
hostname: "jsbin.com"
href: "http://jsbin.com/enugoj/1"
origin: "http://jsbin.com"
pathname: "/enugoj/1"
port: ""
protocol: "http:"
reload: function() { [native code] }
replace: function() { [native code] }
search: ""
toString: function toString() { [native code] }
valueOf: function valueOf() { [native code] }
__proto__: Location
1:14
/enugoj/1
Tak, to jest dokładnie to, co otrzymuję ... wszystko nieokreślone :( –
Ten kod działa w Safari (6.0.1) i wcześniej
// Get location for REST TARGETS
lcnURI = window.location.protocol + "//" + window.location.hostname + ":"
+ window.location.port + "/rest/";
Wygląda na to, że window.location "wychodzi poza kontekst", gdy patrzysz w dzienniku. Ale na miejscu jest w porządku.
Chodzi o to, że oczekuję wszystkich właściwości obiektu lokalizacji, a nie tylko identyfikatora URI. –
Logowanie 'JSON.parse (JSON.stringify (location));' działa poprawnie (metody takie jak 'reload' są tracone, ale i tak nie są potrzebne do inspekcji). –