重新打开程序函数返回类型错误“无法读取 null 的属性'样式'”
Reopenprogram function returns type error "Cannot read property 'style' of null"
我有以下javascript代码,它应该能够创建一个由html文件中的onclick事件触发的对话框。但奇怪的是,我总是Uncaught TypeError: Cannot read property 'style' of null
收到错误.顺便说一下,TypeError 涉及重新打开程序(元素)函数!!我已经检查了该元素是否真的为空,但将其置于警报状态向我显示了通常的元素名称。我知道代码看起来有点粗糙,但我可以自由地提出任何建议。这是jsfiddle代码。我对javascript很陌生,所以如果你能自己完全调整代码,我会很高兴。
请帮帮我!
function executeprogram(element) {
var program = document.createElement("div");
var toolbar = document.createElement("div");
var title = document.createElement("div");
var minimize = document.createElement("div");
var close = document.createElement("div");
var iframe = document.createElement("iframe");
var container = document.getElementById("container");
// Create program Div //
program.id = element;
program.className = "dialog";
program.width = iframe.width;
add(element);
program.setAttribute("onmousedown", "dragstart(this)");
container.appendChild(program);
// Toolbar //
toolbar.id = "toolbar";
toolbar.width = iframe.width;
program.appendChild(toolbar);
// Title //
title.id = "title";
title.innerHTML = element;
toolbar.appendChild(title);
// Minimize //
minimize.id = "minimize";
minimize.innerHTML = "-";
minimize.onclick = minimizeprogram(element);
toolbar.appendChild(minimize);
// Close //
close.id = "close";
close.innerHTML = "x";
close.onclick = closeprogram(element);
toolbar.appendChild(close);
// Create Iframe //
iframe.frameBorder = 1;
iframe.width = "500px";
iframe.height = "250px";
iframe.id = "iframe";
iframe.src = "#";
program.appendChild(iframe);
}
// Minimize program //
function minimizeprogram(element) {
document.getElementById(element).style.display = "hidden";
}
function reopenprogram(element) {
document.getElementById(element).style.visibility = "visible";
}
// Close program //
function closeprogram(element) {
var container = document.getElementById("container");
var app = document.getElementById(element);
container.removeChild(app);
remove(element);
}
// Tabs //
function add(element) {
var tabs = document.createElement("li");
tabs.id = ""+element+"tab";
alert(element);
tabs.onclick = reopenprogram(element);
var add = document.getElementById("tabs");
add.appendChild(tabs);
}
function remove(element) {
var add = document.getElementById("tabs");
var app = document.getElementById(element+"tab");
add.removeChild(app);
}
在你的小提琴中,你永远不会向文档添加具有element
参数值 id 的元素。这就是原因。
相关文章:
- 无法获取属性'selectedIndex'的未定义引用或null引用
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- 未捕获的类型错误:无法读取属性'addEventListener'的null chrome扩展名
- 未捕获的类型错误:无法读取属性'状态'在react中为null
- Javascript Float32数组抛出无法读取属性'0'即使数组定义良好,也为null
- 未捕获的类型错误:无法设置属性'innerHTML'如果为null,则将脚本移动到正文不会;不起作用
- 我该如何解决这个问题?“未捕获的类型错误:无法读取 null 的属性'appendChild'”
- 无法设置属性'innerHTML'在javascript中为null
- 如何计算一个对象中五个属性中有多少是非null的
- Microsoft JScript运行时错误:无法获取属性'的值;样式':对象为null或未定义
- VM5111:1249未捕获类型错误:无法读取属性'x'为null
- 节点的ownerDocument属性为null
- 无法获取属性'字符串'的未定义或null引用IE 11 ASP.NET
- 无法读取属性'addEventListener'菜单上为null的
- Catch无法读取null的属性
- jQuery NaN表单需要NULL属性
- HTML 错误无法设置 null 属性(匿名函数)
- node/angular js如何在对象数组中查找null属性
- 如何检测多级对象是否具有未定义或null属性
- 为什么尝试访问 null 属性会导致某些语言出现异常