我试图只更改特定对象的值,但该值是从我使用的 getElementById()
的输入标记中获取的。我收到一个错误,说我不能调用未定义的 getElementById()
interfaces[idx].document.getElementById(panel).style.fontSize = document.getElementById('fsizes').value +'px';
和
document.getElementById(panel).style.fontSize = interfaces[idx].document.getElementById('fsizes').value +'px';
两者似乎都不起作用。
<input type="text" name="fsize" id = 'fsizes' onchange = 'changeSize();'/>
这是输入。
edit:当点击其中一个跨度时,面板会得到它的值,这样我就知道我正在更改哪个面板的属性。我页面上的面板是一个对象的一部分。接口是我的对象的数组。idx是正在访问的对象。
http://jsfiddle.net/adCE6/fsizes在我设置默认值时返回一个值,猜测该面板未定义。如果您在某个地方设置了它,请确保作用域是正确的,如果还没有,请在它前面加上var。或者若面板不是变量,则将其括在括号中。
如果您放弃接口[idx],这会很好地工作。参见以下示例http://jsfiddle.net/uX5sW/3/