2012-04-07 78 views
5

在一个jsdom文件:jsdom hashchange事件

document = require('jsdom').jsdom("<html><head></head><body></body></html>"); 
window = document.createWindow(); 

改变其哈希:

document.location.href = '#bang'; 

不上window

触发任何'hashchange'事件有谁知道这一种解决方法?

谢谢

+0

我可能是错误的这一点,但通常你会使用'窗口。 location.href ='#bang''而不是'document'。虽然对node.js不够了解。 – 2012-05-15 16:16:35

回答

2

时退房jsdom文档

试试这个代码的其余部分之前:

require('jsdom').defaultDocumentFeatures = { 
    FetchExternalResources : ['script'], 
    ProcessExternalResources : ['script'], 
    MutationEvents   : '2.0', 
    QuerySelector   : false 
} 

var window = jsdom.jsdom(body).createWindow(); 
+0

不错的记得设置这一堆选项的能力!但是,我不明白它们中的任何一个如何影响'hashchange'事件...我错过了什么? – abernier 2012-05-16 08:16:13