workflow_dom/link.rs
1use web_sys::MouseEvent;
2
3use crate::utils::*;
4
5/// Open the given URL in a new browser tab by synthesizing a click on a
6/// transient anchor element with `target="_blank"`.
7pub fn open(url: &str) {
8 let document = document();
9 // let body = body().expect("open_link(): unable to obtain document body");
10
11 let el = document.create_element("a").unwrap();
12 el.set_attribute("href", url).unwrap();
13 el.set_attribute("target", "_blank").unwrap();
14
15 let event = MouseEvent::new("click").unwrap();
16 el.dispatch_event(&event).unwrap();
17}