当前位置:   article > 正文

ifream标签中的子页面,操作父页面的元素_子页面标签

子页面标签

问题描述:子页面内容发生变化时,导航栏不会跟切换

解决办法:

window.parent.document.getElementById

demo

html1

  1. <html>
  2. <head>
  3. <meta charset="UTF-8">
  4. <!-- import CSS -->
  5. <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
  6. </head>
  7. <body>
  8. <div id="app">
  9. <el-menu :default-active="1" class="el-menu-demo" mode="horizontal">
  10. <el-menu-item id="t1" index="1">处理中心</el-menu-item>
  11. <el-menu-item id="t2" index="2"> 我的工作台</el-menu-item>
  12. <el-menu-item id="t3" index="3">消息中心</el-menu-item>
  13. <el-menu-item id="t4" index="4">订单管理</el-menu-item>
  14. </el-menu>
  15. </div>
  16. <div>
  17. <iframe src="html2.html"></iframe>
  18. </div>
  19. </body>
  20. <!-- import Vue before Element -->
  21. <script src="https://unpkg.com/vue@2/dist/vue.js"></script>
  22. <!-- import JavaScript -->
  23. <script src="https://unpkg.com/element-ui/lib/index.js"></script>
  24. <script>
  25. new Vue({
  26. el: '#app',
  27. data: function () {
  28. return {visible: false}
  29. }
  30. })
  31. </script>
  32. </html>

html2

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <script>
  10. function sendMessage() {
  11. let t1 = window.parent.document.getElementById("t1")
  12. t1.classList.remove("is-active")
  13. let t2 = window.parent.document.getElementById("t2")
  14. t2.classList.add("is-active")
  15. }
  16. </script>
  17. <h1>22222222</h1>
  18. <button onclick="sendMessage()">sendMessage</button>
  19. </body>
  20. </html>

在html1中引入html2,在html2中操作html1中的导航元素。

通过点击html2中的按钮,触发。

验证:

 点击html2中的按钮后,将  处理中心的 is-active 移除  为  我的工作台   添加   is-avtive

点击之后能看到,明显的样式变化,我的工作台增加的class  is-active

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/997595
推荐阅读
相关标签
  

闽ICP备14008679号