2011-12-12 179 views
2
jsdom.env({ 
       html: "<html><body></body></html>", 
       scripts: [ 
       //'http://code.jquery.com/jquery-1.5.min.js' 
        'http://server.local:3000/jquery/jquery.min.js' 

       ] 
      }, function (err, window) { 

它不工作腳本是'http://server.local:3000/jquery/jquery.min.js'(它可以使用瀏覽器)jquery。 min.js是jquery-1.5.min.js的副本jsdom.env:本地jquery腳本不起作用

如果腳本是'http://code.jquery.com/jquery-1.5.min.js' - 它都可以。

出了什麼問題?

+1

是什麼'err'樣子? – tmpvar

+0

參見https://github.com/tmpvar/jsdom/issues/379 – GrGr

回答

6

這不是直接回答你的問題,但也許其他人像我這樣做了這個問題。

您可以在腳本條目中指定本地文件。只需在其中放置一個絕對路徑或添加一個documentRoot條目並使用相對路徑。例如。

jsdom.env({ 
     html: "<html><body></body></html>", 
     documentRoot: __dirname + '/lib', 
     scripts: [ 
      'jquery/jquery.min.js' 
     ] 
    }, function (err, window) { 
    } 
); 
0
function domify(cb){ 
    var file= __dirname + '/public/jquery.js'; 
    var jquery = fs.readFileSync(file).toString(); 
    jsdom.env({ 
     html: "<html><body></body></html>", 
     src: [jquery], 
     done: function (err, window) { 
      cb(err,window); 
     } 
    }); 
} 

這個工作對我來說