1***@163.com
1***@163.com
  • 发布:2017-11-29 10:50
  • 更新:2020-05-13 14:37
  • 阅读:2439

mui.load()方法引入界面后JS失效问题怎么解决?

分类:MUI

如题,有知道的大神烦请告知。谢谢。

2017-11-29 10:50 负责人:无 分享
已邀请:
Trust

Trust - 少说废话

mui(selector).load()方法用于将指定的html内容加载至某元素中。
使用dom.innerHTML来渲染内容,而并不是使用iframe来嵌套。
里面的js标签只是被渲染了,并不会执行js。如果需要动态加载js,需要在load完html后,动态创建script节点,并插入dom树中。

  • 1***@163.com (作者)

    首先谢谢您的答案,问题已解决。

    在解决问题的过程中发现如下问题:例如,a.html使用load方法引入b.html,那么把b.html的JS代码写成一个单独的JS(b.js)文件,在a.html中引用b.js,并在load方法的回调函数中调用b.js中的方法。a.html关键代码如下:

    <script type="text/javascript" src="../../js/b.js" ></script>

    <script type="text/javascript">

    mui("#load").load("b.html", function(){

    test();//b.js文件中的方法

    }

    </script>

    发现这种方式也可以。请问该方法是否合理?

    2017-11-29 15:29

JoBoJun

JoBoJun

('#div-id').load("加载的页面.html",function(){
var scriptEl = document.createElement('script');
scriptEl.src = '../js/原页面js.js';
document.body.append(scriptEl);
});

该问题目前已经被锁定, 无法添加新回复