Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
Javascript Zombie.js jQuery加载错误';j、 getClientRects不是一个函数';_Javascript_Jquery_Node.js_Mocha.js_Zombie.js - Fatal编程技术网

Javascript Zombie.js jQuery加载错误';j、 getClientRects不是一个函数';

Javascript Zombie.js jQuery加载错误';j、 getClientRects不是一个函数';,javascript,jquery,node.js,mocha.js,zombie.js,Javascript,Jquery,Node.js,Mocha.js,Zombie.js,所以首先我读了堆栈溢出问题,它看起来和我的问题不一样 基本上,我正在尝试使用Mocha并在Node.js站点上运行一些测试 我正在检查是否可以创建一个用户。最后,我想检查一下我的引导模式是否存在。基本上,我将引导模式包装在一个EJSif语句中,因此很有可能它不存在。这就是为什么我要对它进行测试 但目前它甚至不能使用browser.assert.success()所以我现在只是想在继续检查元素之前解决这个问题 browser.visit('/login', function() { bro

所以首先我读了堆栈溢出问题,它看起来和我的问题不一样

基本上,我正在尝试使用Mocha并在Node.js站点上运行一些测试

我正在检查是否可以创建一个用户。最后,我想检查一下我的引导模式是否存在。基本上,我将引导模式包装在一个EJS
if
语句中,因此很有可能它不存在。这就是为什么我要对它进行测试

但目前它甚至不能使用
browser.assert.success()所以我现在只是想在继续检查元素之前解决这个问题

browser.visit('/login', function() {
    browser.fill('email', 'test1@test.com');
    browser.fill('password', 'testtest');
    browser.pressButton('Login').then(function() {
        browser.assert.success();
    }).then(done, done);
});
在这种情况下,我应该在浏览器当前所在的页面上运行以下代码

<script>
    $("#paymentModal").modal('show');
</script>

美元(“#paymentModal”).modal('show');
当运行这个单元测试时,它给出了以下错误

https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3
}return c}function Q(a){var b;for(b in a)if(("data"!==b||!n.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function R(a,b,d,e){if(M(a)){var f,g,h=n.expando,i=a.nodeType,j=i?n.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||n.guid++:h),j[k]||(j[k]=i?{}:{toJSON:n.noop}),"object"!=typeof b&&"function"!=typeof b||(e?j[k]=n.extend(j[k],b):j[k].data=n.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[n.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[n.camelCase(b)])):f=g,f}}function S(a,b,c){if(M(a)){var d,e,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){n.isArray(b)?b=b.concat(n.map(b,n.camelCase)):b in d?b=[b]:(b=n.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!Q(d):!n.isEmptyObject(d))return}(c||(delete g[h].data,Q(g[h])))&&(f?n.cleanData([a],!0):l.deleteExpan
TypeError: j.getClientRects is not a function
 at k (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:26891)
 at Object.n.extend.pixelMarginRight (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:25936)
 at a.getComputedStyle.Sa (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:27592)
 at Function.n.extend.css (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:30895)
 at https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:4:520
 at Y (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:4661)
 at n.fn.extend.css (https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:4:361)
 at c.setScrollbar (http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:18612)
 at c.show (http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:14692)
 at .<anonymous> (http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:13878)
https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3
}返回c}功能Q(a)函数返回c(a)函数Q(a)函数返回c(a)函数返回c(a)函数返回c(a)函数返回c(a)函数返回c(a)函数返回c(a)函数返回c(a)函数返回c(a){var b;b;b(b)为(b)为(b)为(b)为(b)为(a)若)若(a)若(a)函数返回c)函数返回c(a(a)函数返回c(a(a)返回c(a(a)为(a)为(a(a)为(a)为,(a)为(a)为(a)为(a)为(a(a)为(a)为(a)为(a)为(a)为(a(a)为(a)为(a)为(a)为(a)为(a)为(a)为(a)为(a)为(a)为(a)为(a)为返回k | |(k=i?a[h]=c.pop()| n.guid++:h),j[k]| |(j[k]=i{}:{toJSON:n.noop}),“object”(k)b):j[k[k]b[k]j[k]b):j[k]j[k]j[k]j[k.数据=n.扩展(j[k[k.数据,b),数据,b),数据,b),数据,b),数据,b(),g[k,b),g[k,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h] [b]:(b=n.camelCase(b),b=b.concat(n.map(b,n.camelCase)):d中的b=b(b,b=b in d?[b]:b.split(“”),e=b.length;while(e--)delete d[b[e]];if(c?!Q(d)!n.isEmptyObject(d))return}(c | | |(delete g[h].data,Q(g[h])
TypeError:j.getClientRects不是函数
在k(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:26891)
在Object.n.extend.pixelMarginRight处(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:25936)
在a.getComputedStyle.Sa(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:27592)
在Function.n.extend.css(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:30895)
在https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:4:520
在Y(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:3:4661)
在n.fn.extend.css处(https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:4:361)
在c.setScrollbar(http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:18612)
在c.show(http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:14692)
在(http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js:6:13878)
在我看来,由于某种原因,Zombie.js没有在该页面上加载jQuery,或者出现了错误。但是在前面的堆栈溢出问题中,在问题的开头,Zombie.js似乎可以加载jQuery

你不能用Zombie.js加载jQuery吗?我如何解决这个问题?用jQuery测试页面似乎很简单。有什么想法吗

如果您需要任何其他信息,请告诉我。谢谢

编辑在降级到jQuery版本
1.11.3
时,出于某种原因,它似乎可以工作,错误消失。有什么原因吗?

此错误已修复:

采用JSDOM8/9作为问题的解决方案比我更难 添加虚拟实现应该很容易 getClientRects()只是为了克服那个特定的失败。我会试试看 看看进展如何

添加getClientRects()的存根实现非常简单。我发布了5.0.1,并修复了此特定故障

mdlavin