僵尸:无法读取空类型错误的特性“compareDocumentPosition”:无法读取属性“compareDocumentPosition”空Zombiejs jQuery的nullTypeError“compareDocumentPosition”
的 这发生任何时候,我尝试加载一个页面,其中包括jQuery的使用Zombiejs。这发生在我的Debian & Windows上,有各种不同的页面,使用不同版本的jQuery和页面上没有其他东西。
这似乎与jsDom在页面文档准备好之前评估jQuery的方式有关,但它远远超出了我的头脑。
任何人遇到这种情况,知道解决方法,或有任何指针?谢谢!
UPDATE:这是我的测试(实际上通过,但调试运行表明我提到的错误):
zombie = require "zombie"
browser = new zombie.Browser({debug: false})
$ = require "jquery"
require "should"
app = "http://localhost:3000/"
describe "app", ->
describe "index", ->
it "should display correct title", (done) ->
browser.visit app, (err, browser) ->
done()
这是错误:
Zombie: GET http://localhost:3000/js/jquery-1.7.1.js => 200 Zombie: Cannot read property 'compareDocumentPosition' of null TypeError: Cannot read property 'compareDocumentPosition' of null
at Object.<anonymous> (/js/jquery-1.7.1.js:4807:30)
at Object.<anonymous> (/js/jquery-1.7.1.js:5301:2)
at Object.<anonymous> (/js/jquery-1.7.1.js:9266:2)
at Object._evaluate (/home/dev/Hg/rpg-chat-bdd/node_modules/zombie/lib/zombie/browser.js:136:28)
in /js/jquery-1.7.1.js
导致其他错误,因为'$'没有在我的其他脚本中定义。
这是网页的HTML我测试:
<title>Welcome to Test!</title>
<body>
<div id="main">
</div>
<script type="text/javascript" src="/js/jquery-1.7.1.js"></script>
<script type="text/javascript" src="/js/application.js"></script>
</body>
请向我们展示您用来加载/初始化jquery/zombie的代码。 – mindandmedia 2012-02-24 21:54:33