在页面启动期间,我尝试向 DOM 添加一个元素。
我有以下代码:
$(document).ready(function () {
$(document).prepend("<div id=new_div style=z-index:1;></div>");
});
我已在 FF21、Chrome27 和 IE10 上对此进行了测试。它们都会返回标题中提到的错误(确切的措辞来自 Chrome 调试器)。
在 jquery-1.10.0.js 上进行调试,我将问题跟踪到第 5998 行
safeFrag = document.createDocumentFragment()
显然文档为空。将堆栈跟踪向上至 domManip
在第 6249 行,对象被传递为 this[ 0 ].ownerDocument
,为空。
我已经剥离了页面上的 javascript,只加载 jQuery 并运行此命令,但问题仍然存在。
参见this jsFiddle ,警报没有弹出,这意味着 javascript 引擎之前卡在了线路上。
感谢帮助。
最佳答案
尝试将元素添加到 document
对象的开头是没有意义的。它不是 HTMLElementNode。据我所知,你根本不能给它额外的 child 。
如果你想在某个东西的开头添加一个div元素,那么允许包含它的最高节点是body元素,所以使用:
$(document.body).prepend
…相反。
关于javascript - Jquery 前置 : Cannot call method 'createDocumentFragment' of null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16785227/