作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有需要在 Nightwatch 中执行 htmlEndcoding 的文本。我找到了解决方案,但它需要使用jquery。我不知道如何在 Nightwatch 中访问 jquery。
我发现了以下htmlEncode这看起来像是我可以使用的东西,但我不知道如何将其包含在 Nightwatch 中。我得到 '$' 未定义。我可以看到这是针对 jquery 的,但我不知道如何在 nightwatch 中访问 jquery。
function htmlEncode(value){
// Create a in-memory div, set its inner text (which jQuery automatically encodes)
// Then grab the encoded contents back out. The div never exists on the page.
return $('<div/>').text(value).html();
}
function htmlDecode(value){
return $('<div/>').html(value).text();
}
我还发现了How to write a nightwatch custom command using jquery ,但它带有警告:“请注意,您确实需要在应用程序的全局范围内使用 jQuery,才能使其正常工作。” ...我不知道该怎么做。
我是一名 Java 程序员,我对 nightwatch 和 javascript 都很陌生。看起来我应该能够通过客户端或 api 访问 jquery,但我不知道该怎么做。
尝试了以下几个版本:
npm install jQuery
var $ = require('jquery');
var $ = require('jQuery');
var jsdom = require('jsdom').jsdom
, myWindow = jsdom().createWindow()
, $ = require('jQuery')
, jq = require('jQuery').create()
, jQuery = require('jQuery').create(myWindow)
;
最佳答案
如果您的网络应用程序中有 Jquery,例如:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/core.js"></script>
那么你可以这样做:
const jqueryCheck = function (browser){
browser.execute(function (data, done) {
return $("[href!=''][href]");
}, [e], function(e){
browser.verify.elementPresent(e[0],"Explanation...")
})
}
关于jquery - 如何在 Nightwatch 中使用 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44982075/
我是一名优秀的程序员,十分优秀!