diff options
author | Keith Yeung <kungfukeith11@gmail.com> | 2015-02-06 09:25:59 +0800 |
---|---|---|
committer | Keith Yeung <kungfukeith11@gmail.com> | 2015-02-06 13:24:20 +0800 |
commit | 75e5c6fcdba51061657f78249be62a0d80a3167c (patch) | |
tree | 63a9dcccfcb0fb545a07e893c47ad1a9b54c587d /components/script/dom | |
parent | c360b75e1640d5329068cfdbaa560b63ed03b35f (diff) | |
download | servo-75e5c6fcdba51061657f78249be62a0d80a3167c.tar.gz servo-75e5c6fcdba51061657f78249be62a0d80a3167c.zip |
Implemented Location.assign
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/location.rs | 6 | ||||
-rw-r--r-- | components/script/dom/webidls/Location.webidl | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/components/script/dom/location.rs b/components/script/dom/location.rs index b9f1867e923..4f4c44e4015 100644 --- a/components/script/dom/location.rs +++ b/components/script/dom/location.rs @@ -9,6 +9,7 @@ use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflector, reflect_dom_object}; use dom::urlhelper::UrlHelper; use dom::window::Window; +use dom::window::WindowHelpers; use page::Page; use util::str::DOMString; @@ -37,6 +38,11 @@ impl Location { } impl<'a> LocationMethods for JSRef<'a, Location> { + // https://html.spec.whatwg.org/multipage/browsers.html#dom-location-assign + fn Assign(self, url: DOMString) { + self.page.frame().as_ref().unwrap().window.root().r().load_url(url); + } + fn Href(self) -> DOMString { UrlHelper::Href(&self.page.get_url()) } diff --git a/components/script/dom/webidls/Location.webidl b/components/script/dom/webidls/Location.webidl index 99076988122..95d5cf1872b 100644 --- a/components/script/dom/webidls/Location.webidl +++ b/components/script/dom/webidls/Location.webidl @@ -5,7 +5,7 @@ // http://www.whatwg.org/html/#location /*[Unforgeable]*/ interface Location { - //void assign(DOMString url); + void assign(DOMString url); //void replace(DOMString url); //void reload(); }; |