我正在构建一个启动计时器的测试脚本,执行一些随机操作,然后关闭计时器并报告执行所需的时间。这是我到目前为止得到的:
Ext.define('project.view.test', {
extend: 'Ext.Panel',
xtype: 'test',
config: {
styleHtmlContent: true,
scrollabe: 'vertical',
title: 'test',
tpl: '<p id="time"></p>'
},
initialize: function() {
this.measureTime();
},
measureTime: function() {
var startTime=new Date();
a = 2;
for(i=0; i<1000; i++) {
a = a*a*a*i;
}
var b=Math.floor((new Date()-startTime)/100)/10;
document.getElementById('time').innerHTML = b;
}
});
这里的问题是我得到了错误:
Uncaught TypeError: Cannot set property 'innerHTML' of null
我的猜测是在执行 JS 代码之后呈现 html p-tag。真的吗?我以为脚本是逐个操作执行的,而 htmlcode 在 js-code 之上,这让我有点困惑。
我试图将 javascript 放在 html/tpl 标记中(在配置中)。它消除了错误,但没有写出任何内容。为什么?一切执行的顺序是什么,我该如何解决?