Dennis
Dennis
  • 发布:2015-06-16 15:21
  • 更新:2015-06-16 17:52
  • 阅读:2071

如何在init里调用plusReady的值

分类:Native.js
var topic_id=null;  
mui.plusReady(function() {  
				var cur = plus.webview.currentWebview();  
				var type_name = cur.topic_name;  
				topic_id=cur.topic_id;  
				document.getElementById("title").innerHTML = type_name;  
				document.getElementById("topic-id").innerHTML=topic_id;  
			});  
			mui.init({  
				subpages:[{  
				url:"refresh_topics.html",  
				id:"refresh_topics",  
				styles:{  
					top:"46px",  
					bottom:"0"  
				},extras:{  
					"topic_id":topic_id  
				}  
				}]  
			});  
alert(topic_id);

得到的值仍然是初始值null,如何才能得到真正的topic_id值?

2015-06-16 15:21 负责人:无 分享
已邀请:
DCloud_UNI_CHB

DCloud_UNI_CHB

你的需求是传递参数给子webview,可以通过如下方式变通实现:

var topic_id=null;  
mui.plusReady(function() {  
    var cur = plus.webview.currentWebview();  
    var type_name = cur.topic_name;  
    topic_id = cur.topic_id;  
    document.getElementById("title").innerHTML = type_name;  
    document.getElementById("topic-id").innerHTML=topic_id;  
  
    //创建子webview  
    var child = plus.webview.create("refresh_topics.html","refresh_topics",{top:"46px",bottom:"0"},{"topic_id":topic_id});  
    cur.append(child);  
});
DCloud_UNI_CHB

DCloud_UNI_CHB

alert(topic_id);这行代码alert出来的话,肯定是null的,因为js是顺序执行的,但mui.plusReady需要等待plusReady事件发生后,才会真的执行,之后才能拿到topic_id的值;

  • Dennis (作者)

    那如何拿到呢?需要在哪里加代码?


    2015-06-16 17:34

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