当前位置:   article > 正文

iframe内外互调

iframe内部修改外边

日常工作中很少使用iframe,突然间要使用还需要去查下使用方式,到处搜索,不如自己记录下,在segmentfault里查看还是比较方便的。。。。

效果
图片描述

test.html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. <script src="jquery.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="foo">
  10. <ul>
  11. <li><a id="bar" href="###">bar</a></li>
  12. </ul>
  13. </div>
  14. <iframe id="demo" src="demo.html" width="200px" height="200px" frameborder="1"></iframe>
  15. <script>
  16. var word = 'hello';
  17. function getWord() {
  18. console.log(word+' world !');
  19. }
  20. // 调用子窗口中的元素、变量、方法
  21. window.onload = function() { // 等iframe内容加载完成
  22. var childWindow = document.getElementById('demo').contentWindow;
  23. console.log(childWindow.age); // 24
  24. childWindow.getAge(); // 24
  25. childWindow.document.getElementById('main').style.cssText = 'font-size: 24px;color: #690;';
  26. // jquery方式
  27. $('#demo').contents().find('#main').css({'font-weight': 'bold', 'text-decoration': 'underline'});
  28. }
  29. </script>
  30. </body>
  31. </html>

demo.html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. <script src="jquery.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="main">123</div>
  10. <script>
  11. var age = 24;
  12. function getAge() {
  13. console.log(age);
  14. }
  15. // 调用父窗口中的元素、变量、方法
  16. var parentWindow = window.parent;
  17. parentWindow.document.getElementById('foo').style.cssText = 'border: 1px solid #f00'; // 设置样式
  18. console.log(parentWindow.word); // hello
  19. parentWindow.getWord(); // hello world !
  20. // jquery方式 $(html,[ownerDocument])
  21. $('#foo', parentWindow.document).find('li a').css('background-color', '#ccc');
  22. </script>
  23. </body>
  24. </html>
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/997558
推荐阅读
相关标签
  

闽ICP备14008679号