window.addEventListener写成共同方法
时间: 2023-10-18 21:10:34 浏览: 42
如果您想在共同方法中添加事件监听器并返回结果给父窗口,可以使用下面的代码示例:
```javascript
function addEventListenerAndReturnResultToParent(eventName, callback) {
window.addEventListener(eventName, function(event) {
var result = callback(event); // 调用回调函数获取结果
window.parent.postMessage(result, '*'); // 将结果发送给父窗口
});
}
```
这个共同方法接受两个参数:事件名称和回调函数。回调函数将在事件触发时执行,并返回一个结果。在这个方法中,我们将事件监听器添加到 window 对象上,并在事件触发时获取回调函数的结果。然后,我们使用 postMessage() 方法将结果发送回父窗口。
例如,如果您想在共同方法中添加一个点击事件监听器,并返回点击的坐标给父窗口,可以这样使用这个方法:
```javascript
addEventListenerAndReturnResultToParent('click', function(event) {
var x = event.pageX;
var y = event.pageY;
return { x: x, y: y }; // 将坐标作为对象返回
});
```
在这个例子中,我们在回调函数中获取鼠标点击的坐标,并将它们作为对象返回。这个对象将被发送回父窗口。父窗口可以像之前的示例一样使用 window.addEventListener() 来监听这个事件,并获取发送的结果。