Javascript 为什么JSFIDLE不允许我访问document.body?
知道这是怎么回事吗Javascript 为什么JSFIDLE不允许我访问document.body?,javascript,jsfiddle,Javascript,Jsfiddle,知道这是怎么回事吗 var p = document.createElement('p'); p.innerHTML = 'test'; document.body.appendChild(p); 因为还没有尸体 将JS设置为运行onDomready或onLoad。因为您的Javascript在文档准备好之前就已经运行了 在左侧,将下拉菜单切换到onDomready,您应该会表现良好 因为javascript是在主体之前加载的,所以document.body仍然为NULL。而是使用卸载方法
var p = document.createElement('p');
p.innerHTML = 'test';
document.body.appendChild(p);
因为还没有尸体
将JS设置为运行onDomready或onLoad。因为您的Javascript在文档准备好之前就已经运行了 在左侧,将下拉菜单切换到onDomready,您应该会表现良好
因为javascript是在主体之前加载的,所以document.body仍然为NULL。而是使用卸载方法
window.onload = function() {
var p = document.createElement('p');
p.innerHTML = 'test';
document.body.appendChild(p);
}
JSFIDDLE here:正如其他人指出的,但没有确切解释,您的JSFIDDLE配置将您的JavaScript代码放在左边的框架和扩展中,没有包装,因此,还没有解析,无法进行操作/遍历。让我感到奇怪的是,JSFIDLE实际上默认为onLoad-OP必须手动将JS配置更改为in,这几乎是在不修改JS的情况下造成这种情况的唯一可能的方法,还有一件不可能是意外的事情。FWIW,这里有一个DOM,但没有尸体。@FelixKling,够公平的。