如题,做后台的时候发现打开tabiframe页面会重新拉取js,css文件,这个事挺恶心的,用layui就能试出来,每次打开个iframe就会加载layer,laydate啥的,加载时间特别长,我想能不能子iframe直接使用父元素的静态文件。
例如俩页面;
页面A
<!DOCTYPE html>
<html>
<head>
<script src="./jquery.js"></script>
</head>
<body>
<iframe src="./b.html"></iframe>
</body>
{/html>
页面B
<!DOCTYPE html>
<html>
<head>
<script src="./jquery.js"></script>
</head>
<body>
<div id="app"></div>
<script>
$(function(){
$("#app").append("<span>123</span>");
})
</script>
</body>
{/html>
你可以在写完代码之后,将B页面中的js引入放到A页面中,试试
这个试试
window.parent.document.getElementById("父窗口的元素ID")
https://www.cnblogs.com/wuxu/p/12877494.html
jquery的话可以通过调用父页的jQuery对象指定上下文获取iframe对象中内容。
parent.$("#app",document).append('<span>123</span>');
但是设计到插件,这个就没法操作了,总不能去修改插件。如果只是简单的弹窗之类的操作,父页可以提供一个方法执行调用插件的,子页调用父页的方法就行,直接在父页弹窗。但是设计到其他复杂操作必须iframe内执行的这个就没搞了