我想开始使用'jsdom‘包jsdom:
我在文档中看到了以下代码片段:
var jsdom = require("jsdom");
jsdom.env("http://nodejs.org/dist/", [
'http://code.jquery.com/jquery-1.5.min.js'
],
function(errors, window) {
console.log(window);
// I want to open a browser window that
我是nodejs的新手,我想做的是扫描我网站的所有url (启用了javascript和jquery ),并检查url是否包含给定的字符串。
为了做到这一点,我使用了jsdom,但是当我启动脚本时,只提取了一些url,然后崩溃了,给出了这个错误:
timers.js:110
first._onTimeout();
^
TypeError: Property '_onTimeout' of object [object Object] is not a function
at Timer.listOnTimeout [as ontimeout] (ti
我正在使用库D3.js来绘制一个pie chart。
为了创建图表,我使用了使用gulp的预渲染服务器端(NodeJs)和npm jsdom模块,然后保存HTML文件。而且它是有效的。
// HTML SAVING
// window is the jsdom obj
var innerHTML = window.document.documentElement.innerHTML;
var Parser = require('parse5').Parser,
parser = new Parser(),
dom = parser.parse(htmlSt
我有一个相当棘手的任务,但新手在NodeJS。
所以我需要循环遍历URL数组,从数组中获取每个页面,将其传递给jsdom+jquery,并在数组末尾添加新的查找到的URL。
乍一看,任务非常简单,但由于NodeJS的异步,它变成了噩梦。
现在我有了这样的代码(为了更好地理解,它被简化了)
var jsdom = require("jsdom");
var fs = require("fs");
var jquery = fs.readFileSync("./jquery.js").toString();
var fields = ['h
我尝试将现有的项目转换为使用Typescript,但我在测试设置时遇到了问题。
我有一个用于测试的设置文件,用于设置jsdom,以便所有与DOM交互的代码在测试期间都能正常工作。使用Typescript (带有mocha的ts-node)时,我总是得到这样的错误:
Property 'window' does not exist on type 'Global'.
为了防止出现这种情况,我尝试像这样修补NodeJS.Global接口:
declare namespace NodeJS{
interface Global {
document: Doc
我正在创建一个函数,该函数跨分页内容返回给定选择器的所有元素的jQuery对象。
const getPagedContent = async (base, selector) => {
let elements = [];
let lastPage = 1;
let page = 0;
while (lastPage > page) {
page++;
let response = await got(`${base}/page/${page}`);
let html = new jsdom.JSDOM
我正在使用JSDOM6、jQuery和nodeJS。这些简单的代码行不会在控制台中显示任何东西,而它们应该是:
var jsdom = require("jsdom").jsdom;
var doc = jsdom();
var window = doc.defaultView;
var $ = require('jquery')(window);
$.get('http://racknet.noip.me/a.php', function( data, status ) {
console.log(status);