window.open 不通过URL传递参数
时间: 2023-11-18 12:52:30 浏览: 243
可以通过在打开的页面中使用 JavaScript 代码来获取参数。具体来说,您可以使用 `window.opener` 属性来获取打开当前窗口的窗口对象,然后使用该对象的 `postMessage()` 方法向该窗口发送消息,并在打开的页面中使用 `window.addEventListener()` 方法来侦听消息事件。在接收到消息后,您可以在打开的页面中执行相应的操作。以下是一个简单的示例代码:
在打开窗口的页面中:
```javascript
var myWindow = window.open("http://example.com/myPage.html");
myWindow.postMessage("myParameter", "*");
```
在打开的页面中:
```javascript
window.addEventListener("message", function(event) {
if (event.origin !== "http://example.com") return;
// event.data 包含发送的参数
}, false);
```
请注意,这种方法可能存在安全风险,因此您应该仔细考虑使用它。
相关问题
window.open向打开页面传递参数
您可以使用JavaScript的window.open方法来打开一个新页面,并向它传递参数。下面是一个示例:
```
var url = "https://www.example.com/page";
var params = "param1=value1¶m2=value2";
// 使用window.open打开新页面,并将参数作为查询字符串传递
window.open(url + "?" + params);
```
在上面的示例中,您可以将URL和参数替换为实际的值。参数需要以查询字符串的形式传递,使用`param1=value1¶m2=value2`的格式。在新页面中,您可以使用JavaScript来解析和使用这些参数。
请注意,由于浏览器的安全策略,某些情况下可能会被阻止使用window.open方法打开新窗口。同时,接收参数的新页面需要能够解析查询字符串并做出相应处理。
window.open隐藏url中的参数
window.open()函数是JavaScript中的一个方法,用于在新的浏览器窗口或标签中打开一个指定的URL。在使用window.open()打开一个URL时,确实可以隐藏URL中的参数。
当我们使用window.open()打开URL时,我们可以将URL中的参数放在一个变量中,然后使用该变量作为window.open()的参数。这样就可以实现隐藏URL中的参数,因为在新打开的窗口或标签中,用户看不到我们传递的参数。
例如,假设我们要打开一个URL为"https://www.example.com?id=123&name=John",其中包含了两个参数id和name。我们可以将这个URL存储到一个变量中,然后使用该变量作为window.open()的参数。
代码示例:
```
var url = "https://www.example.com?id=123&name=John";
window.open(url);
```
在上述示例中,我们通过使用变量url作为window.open()的参数,打开了一个新的窗口或标签。该窗口或标签中的URL中的参数id和name是隐藏的,因为用户无法直接看到我们传递的参数。
通过使用window.open()方法,我们可以实现隐藏URL中的参数,同时在新的窗口或标签中加载指定的URL。这可以用于提供更好的用户体验,并增强网站的安全性。
阅读全文