apicloud app 对外部url 页面进行 js注入

使用aplcloud 创建app项目,使用openFrame方法加载外部url 页面,如何对页面控制。官方并无明确的方法,但现实确实存在大量这样的业务需求。尝试用execScript()方法 ,可行。

 

var url = "www.baidu.com";

api.openFrame({
            name: 'detailframeweb',
            url: url,
            bounces: false,
            rect: {
                x: 0,
                y: headerPos.h,
                w: 'auto',
                h: mainPos.h
            }
        }); 
 //js注入
setInterval(jsInject(),1000);

// js注入
function jsInject(){
    var js = 'var login= function(){api.execScript({ name: "root",script: "toOfflineSalonReg()"});};document.getElementsByTagName("a")[0].removeAttribute("href"); document.getElementsByTagName("a")[0].setAttribute("onclick", "login()");';
    api.execScript({
      frameName:"detailframeweb",
      script: js
    });
}

转载于:https://my.oschina.net/imoc/blog/712360

你可能感兴趣的:(apicloud app 对外部url 页面进行 js注入)