大家下午好,处理js无功能达到素描值
我正在与processingjs合作,并且实现了处理js的一个特性;
我有一个叫做mysketch1.pde的草图文件,在我的草图里面我只声明了int x = 5;出于测试目的。因此,mysketch1.pde包含一个名为getX()的方法,它是x值的getter。
可以说,我想达到这个值并将其打印在我的网页上。如果我这样写我的Java脚本,我有一个问题;
<script type="text/javascript">
var mysketch = Processing.getInstanceById("mysketch1");
if(mysketch==null){
window.alert("it is null");
}
else
window.alert(mysketch.getX());
</script>
在此代码中,mysketch变量始终返回null。 (我包括我的素描在JavaScript头之前的部分)
但是,如果我把一个按钮,我的网页和调用相同的代码作为功能,它完美的作品;
<script type="text/javascript">
function click(){
var mysketch = Processing.getInstanceById("mysketch1");
if(mysketch==null){
window.alert("it is null");
}
else
window.alert(mysketch.getX());
}
</script>
<button type="button" onclick="click()">place</button>
我想这stuation happends因为在此之前我.pde文件不知何故JavaScript的工作是loaded.I想.pde被自动加载后显示X的值。你知道我该怎么处理这个问题?
问候,
有点破解,但你可以轮询'getX()'直到它变成不是'null'?我不知道JS,但是像'var x = getX(); while(x!= null){sleep(1); x = getX();}'? – kevinsa5
亲爱的凯文; 感谢您的回答。我用setTimeout()函数来解决这个问题。所以我让我的getX()方法等到。素描已准备就绪。 –
我刚刚意识到我的评论中有一个错字,我的意思是'while(x == null)'......哦好。真高兴你做到了。我会将它作为未来访问者的答案发布。 – kevinsa5