Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用jsdom获取当前浏览器DOM?_Node.js_Dom_Jsdom - Fatal编程技术网

Node.js 使用jsdom获取当前浏览器DOM?

Node.js 使用jsdom获取当前浏览器DOM?,node.js,dom,jsdom,Node.js,Dom,Jsdom,是否可以使用jsdom获取网站的更改/活动DOM 例如: 客户端 在我的test.html文件中,我有一个按钮,它附加了新的元素: $('#button').click(function(){ $('body').append('<div class="p">new</div>'); }); 我知道我可以计算客户端的元素并将其传递给服务器。但是我感兴趣的是jsdom是否可以访问“新的/当前的”DOM 我假设jsdom读取text.html的DOM,但无法访问网站的实时

是否可以使用jsdom获取网站的更改/活动DOM

例如:

客户端

在我的
test.html
文件中,我有一个按钮,它附加了新的
元素:

$('#button').click(function(){
 $('body').append('<div class="p">new</div>');
});
我知道我可以计算客户端的元素并将其传递给服务器。但是我感兴趣的是jsdom是否可以访问“新的/当前的”DOM


我假设jsdom读取
text.html
的DOM,但无法访问网站的实时DOM

即使jsdom允许您修改模板的DOM,它仍然保留在服务器端


服务器端与客户端DOM或您所称的“实时DOM”无关。

您可能想看看NowJS-和Socket.io-(包含在NowJS中)


NowJS将允许您在服务器和客户端之间共享功能和数据,反之亦然。

请提供更详细的上下文。上面的代码是在最初加载页面时发生的(是GET),还是在单击页面中的按钮时发生的(POST/PUT/ajax)?
everyone.now.countDiv = function() {
    var jquery = fs.readFileSync("./jquery16.js").toString();

    jsdom.env(
      {
        html: 'http://localhost:8080/test.html',
        src: [
          jquery
      ],
      done: function(errors, window) {
        var $ = window.$;
        var len = window.$('.p').length;
        console.log("Divs: ", len);
      }
    });
}