当前位置: 首页 > news >正文

vue3使其另一台服务器上的x.html,实现x.html调用中的函数,并向其传递数据。

vue3例子

<template><div><iframe@load="loadIFreamSite"id="loadIframeSite":src="iframeSrc1"frameborder="0"scrolling="no"allowtransparency="true"style="width: 100%"></iframe><el-button @click="handleOther">调用其他服务器函数</el-button></div>
</template><script setup>
import { ref, onMounted } from 'vue';const iframeSrc1 = ref('http://192.168.1.13:5173/iframe.html'); // 确保指向 iframe.html// 模拟根据 JSON 控制
const controlJson = {'131_amxm_YX_4_yx1': '1','131_amxm_YX_4_yx2': '1','131_amxm_YC_4_yc1': '98.3',
};function loadIFreamSite() {const iframe = document.querySelector('#loadIframeSite');if (iframe && iframe.contentWindow) {iframe.contentWindow.postMessage(controlJson, 'http://192.168.1.13:5173'); // 指定目标 origin} else {console.error("Iframe not loaded or contentWindow not available.");}
}function handleOther() {console.log('window:', window);loadIFreamSite();
}
</script><style>
/* 添加一些样式 */
h1 {text-align: center;
}
button {display: block;margin: 20px auto;
}
</style>

html例子

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Iframe Content</title>
</head>
<body><h1>Iframe Content</h1><p id="receivedData">Waiting for data...</p><script>window.addEventListener('message', function(event) {// 验证消息来源 (重要安全步骤!)if (event.origin !== '你的主应用域名') { // 将 '你的主应用域名' 替换为你的主应用程序的实际域名console.warn('Message origin not trusted:', event.origin);return;}console.log('Received data from parent:', event.data);// 更新页面上的内容document.getElementById('receivedData').textContent = JSON.stringify(event.data); // 将数据转换为字符串显示});</script>
</body>
</html>

相关文章:

  • react中有哪几种数据结构?分别是干什么的?
  • 水表盘数字显示区域分割数据集labelme格式538张2类别
  • 【知识科普】今天聊聊CDN
  • 【AI Weekly】AI前沿热点周刊(4.21~4.27)
  • GD32F407单片机开发入门(十六)单片机IAP(在应用编程)详解及实战源码
  • 2025汽车制造企业数字化转型路径参考
  • Android Kotlin ViewModel 错误处理:最佳 Toast 提示方案详解
  • 海外App开发进阶:AI驱动的本地化与跨平台高效架构实战
  • 重测序关系矩阵构建方式汇总
  • 【机器学习】朴素贝叶斯
  • PyCharm与Unreal Engine集成进行开发
  • Numpy数组与矩阵——python学习
  • CSS 预处理器与模块化:Sass/LESS 实战技巧
  • 项目实战-贪吃蛇大作战【补档】
  • K8S ConfigMap 快速开始
  • 防静电瓷砖 vs 直铺PVC防静电地板优劣势对比
  • OpenCV 图形API(68)图像与通道拼接函数------垂直拼接两个图像/矩阵的函数concatVert()
  • OpenCV 图形API(67)图像与通道拼接函数-----水平拼接(横向连接)两个输入矩阵(GMat 类型)函数concatHor()
  • 使用 MQTT - C 访问 IoTDA 平台:一个完整的嵌入式示例
  • phpstorm用php连接数据库报错
  • 澎湃回声|山东莱州、潍坊对“三无”拖拉机产销市场展开调查排查
  • 牛市早报|国家发改委:将推出做好稳就业稳经济推动高质量发展若干举措
  • 北京公园使用指南
  • 新经济与法|如何治理网购刷单与控评?数据合规管理是关键
  • 广州一季度GDP为7532.51亿元,同比增长3%
  • QFII一季度现身超300家公司:持有南京银行市值最高,5家青睐立航科技