js和vue方法的相互调用(iframe父子页面的方法相互调用)。
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
js和vue⽅法的相互调⽤(iframe⽗⼦页⾯的⽅法相互调⽤)。
项⽬是前后端不分离的,模板引擎使⽤的JSP。
但是使⽤了Vue+ElementUI,这⾥列举⼀些常⽤的调⽤⽅式,有时候可能。
在js⾥调⽤vue⽅法
我们需要把⽅法注册到vue对象之外的页⾯,所以对与在methods中定义的⽅法,需要在mounted中注册给window。
之后我们可以在js⾥直接调⽤,
在vue⾥调⽤js⽅法
直接使⽤window.⽅法名就可以调⽤
在主页⾯中调⽤iframe⼦页⾯的代码:
<!--主页⾯中的JS代码-->
<script type="text/javascript">
//调⽤⼦页⾯的⽅法.
var childWindow = $("#addFrame")[0].contentWindow; //表⽰获取了嵌⼊在iframe中的⼦页⾯的window对象。
[]将JQuery对象转成DOM对象,⽤DOM对象的contentWindow获取⼦页⾯window对象。
childWindow.subFunction(); //调⽤⼦页⾯中的subFunction⽅法。
</script>
<!--⼦页⾯中的JS代码-->
<script type="text/javascript">
//⼦页⾯调⽤⽗页⾯中的⽅法。
window.parent.parentFunction(); //parentFunction是⽗页⾯中⾃定义的JS⽅法。
</script>
在iframe⼦页⾯(vue环境⼀样)中调⽤⽗页⾯代码:
⼦页⾯:
主页⾯:
在⼀个iframe⼦页⾯调⽤另⼀个iframe⼦页⾯的⽅法,并且同为Vue环境
主页⾯:
⼦页⾯1,调⽤的⼀⽅:
⼦页⾯2,被调⽤的⼀⽅,需要注册:。