我意识到还有其他库设计用于与Zombie一起使用类似jQuery的语法,但出于我的目的,我特别希望/需要使用jQuery本身以保持与一些早期编写的代码的兼容性.
我安装了npm jQuery包,我一直在尝试将jQuery导入到我的脚本中,然后使用Zombie返回的窗口初始化它,如下所示:
var Zombie= require("zombie"),
$ = require("jquery")
, zombie = new Zombie();
zombie.visit("http://www.mysite.com", function (err, browser, status) {
if(err) {
console.log("Error: " + err);
}
//Initialize a new jQuery instance with the current window returned by Zombie
var $window = $(browser.window);
//Get an actual jQuery object so we can search for stuff
var document = $window("body");
var inputBoxUsername = document.find("input#username");
console.log(inputBoxUsername.html());
});
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为它说没有html()功能,jQuery实际上似乎没有返回我期待的对象.
有没有办法在僵尸中使用jQuery?
小智 3
如果您的站点已经加载了 jquery,您可以立即使用加载的 jQuery,这在某些情况下要容易得多。
var document = browser.window.$("body");
Run Code Online (Sandbox Code Playgroud)
将按预期工作,因为它是一个 jQuery 对象。
我认为您无论如何都可以添加脚本文件,这样您就可以动态地添加 jQuery 并使用它,就像我刚才提到的那样。
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
1783 次 |
| 最近记录: |