pjs未定义(processingjs)

时间:2012-01-08 16:36:37

标签: javascript jquery

如果我使用它:

$(document).ready(function() {
    pjs = Processing.getInstanceById("EyeCanvas");
    console.log(pjs);
}

然后pjs总是未定义

当我使用它时:

function test() {
    pjs = Processing.getInstanceById("EyeCanvas");
    console.log(pjs);
}

并用一个按钮触发test(),然后按照应该的pjs = D.Processing。

我按此顺序加载脚本:

    <script type="text/javascript" src="processing-1.3.6.min.js"></script>
    <script type="text/javascript" src="jquery1-7-1.js"></script>
    <script type="text/javascript" src="script.js"></script>

如果没有人按下按钮,我如何使用pjs?

2 个答案:

答案 0 :(得分:3)

请尝试这个 - 只是为了查看它是否是计时问题 - 请注意交换的脚本:

<script type="text/javascript" src="jquery1-7-1.js"></script>
<script type="text/javascript" src="processing-1.3.6.min.js"></script>
<script type="text/javascript" src="script.js"></script>

var tId,pjs,cnt=0;
$(document).ready(function() {
  tId=setInterval(function() {
    pjs = Processing.getInstanceById("EyeCanvas");
    console.log(cnt+':'+pjs);
    if (pjs) clearInterval(tId);
  },500);
});

这是什么意思?

var tId,pjs,cnt=0;
$(document).ready(function() {
  pjs = Processing.getInstanceById("EyeCanvas");
  console.log(cnt+':'+pjs);
  if (!pjs) tId=setInterval(function() {
    pjs = Processing.getInstanceById("EyeCanvas");
    console.log(cnt+':'+pjs);
    if (pjs) clearInterval(tId);
  },500);
});

答案 1 :(得分:0)

mplungjan 写了真正的答案,但请记住,当你使用JQuery插件时,你必须首先加载JQuery库。