mouse类

这个类是对各种鼠标操作的抽象,比如移动,点击,双击,滚动等。它要求一个已经获得DOM属性的casper对象,能用这种方式创造一个鼠标对象:

var casper = require("casper").create();
var mouse = require("mouse").create(casper);
提示:
一个capser对象已经有一个mouse属性,因此你一般情况下你不需要在脚本里显式声明一个:
casper.then(function() {
this.mouse.click(400, 300); // clicks at coordinates x=400; y=300
});
click()

Signature:

  • click(Number x, Number y)

  • click(String selector)

对匹配的第一个元素执行一次点击,提供一个选择器表达式或者坐标

casper.then(function() {
this.mouse.click("#my-link"); // clicks <a id="my-link">hey</a>
this.mouse.click(400, 300); // clicks at coordinates x=400; y=300
});
提示:
你可以直接使用Casper#click来替代这个方法
 
doubleclick()

Signature:

  • doubleclick(Number x, Number y)

  • doubleclick(String selector)

对匹配的元素发送一个双击事件

casper.then(function() {
this.mouse.doubleclick("#my-link"); // doubleclicks <a id="my-link">hey</a>
this.mouse.doubleclick(400, 300); // doubleclicks at coordinates x=400; y=300
});
down()

Signature:

  • down(Number x, Number y)

  • down(String selector)

对匹配的元素发送一个鼠标按下事件

casper.then(function() {
this.mouse.down("#my-link"); // press left button down <a id="my-link">hey</a>
this.mouse.down(400, 300); // press left button down at coordinates x=400; y=300
});
move()

Signature:

  • move(Number x, Number y)

  • move(String selector)

鼠标移动到匹配的元素上

casper.then(function() {
this.mouse.move("#my-link"); // moves cursor over <a id="my-link">hey</a>
this.mouse.move(400, 300); // moves cursor over coordinates x=400; y=300
});
up()

Signature:

  • up(Number x, Number y)

  • up(String selector)

对匹配的元素发送一个鼠标放开事件

casper.then(function() {
this.mouse.up("#my-link"); // release left button over <a id="my-link">hey</a>
this.mouse.up(400, 300); // release left button over coordinates x=400; y=300
});

[译文]casperjs的API-mouse模块的更多相关文章

  1. [译文]casperjs的API-clientutils模块

    casper提供了少量的客户端接口用来进行远程DOM环境注入,通过clientutils模块的ClientUtils类实例中的__utils__对象来执行: casper.evaluate(funct ...

  2. [译文]casperjs 的API-casper模块

    Casper class: 可以通过这个模块的create()方法来获取这个模块的一个实例,这是最容易的: var casper = require('casper').create(); 我们也可以 ...

  3. [译文]casperjs的API-colorizer模块

    colorizer模块包含了一个Colorizer类,它能够生成一个标准化的颜色字符串: var colorizer = require('colorizer').create('Colorizer' ...

  4. [译文]casperjs使用说明-使用命令行

    使用命令行 Casperjs使用内置的phantomjs命令行解析器,在cli模块里,它传递参数位置的命名选项 但是不要担心不能熟练操控CLI模块的API,一个casper实例已经包含了cli属性,允 ...

  5. JavaScript 客户端JavaScript之事件(DOM API 提供模块之一)

    具有交互性的JavaScript程序使用的是事件驱动的程序设计模型.   目前使用的有3种完全不同的不兼容的事件处理模型. 1.原始事件模型 (一种简单的事件处理模式) 一般把它看作0级DOM API ...

  6. [译文]casperjs使用说明-测试

    capserjs自带了一个测试框架,它提供了一个使你能够更容易的测试你的web应用的工具集. 注意: 1.1版本变更 这个测试框架,包括它的所有API,仅能使用在casperjs test子命令下 如 ...

  7. JavaScript 客户端JavaScript之样式表操作(DOM API 提供模块之一)

    层叠样式 表和动态HTML   层叠样式表(CSS)是指定HTML文档或XML文档的表现的标准.     使用CSS和Javascript,可以创建出各种视觉效果,这些效果可以统称为动态HTML(DH ...

  8. ansible api常用模块与参数

    ###ansibleAPI 常用模块 用于读取yaml,json格式的文件 from ansible.parsing.dataloader import DataLoader #用于管理变量的类,包括 ...

  9. [译文]casperjs使用说明-选择器

    casperjs的选择器可以在dom下工作,他既支持css也支持xpath. 下面所有的例子都基于这段html代码: <!doctype html> <html> <he ...

随机推荐

  1. input实时监听控制输入框的输入内容和长度,并进行提示和反馈

    一.前言 在MVVM模式下,有个双向数据绑定(data-binding)的优势,可以通过viewmodel实时的监听用户操作,也可以将model的改动实时的反馈到界面上. 那么,在传统的js操控DOM ...

  2. Python深度学习之安装theano(windows)

    前方预警:windows的坑太多了,抛弃用linux吧 安装theano,提前清空自己的python环境吧,坑太多了,anaconda会自动安装path 一,首先安装python包管理anaconda ...

  3. 数据库查询返回Resource id #9后的处理方式

    如果在调用PHP查询数据库,在echo后返回的是Resource id #9,可能你的输出方式是: $sql="SELECT * FROM dbname WHERE id='1'" ...

  4. 前端基础之:JQuery

  5. gsm

    libosmocore Osmocom-BB wireshark 拦截一个短信内容

  6. Display PDF in browser | Acrobat, Reader XI

    点这个链接查看详细的解决办法 http://helpx.adobe.com/acrobat/using/display-pdf-browser-acrobat-xi.html When you cli ...

  7. MyBatis 实用篇(二)配置文件

    MyBatis 实用篇(二)配置文件 一.全局配置 全局配置:http://www.mybatis.org/mybatis-3/zh/configuration.html <?xml versi ...

  8. 矩阵乘法np.dot()及np.multiply()以及*

    转载自 https://blog.csdn.net/u012609509/article/details/70230204 Python中的几种矩阵乘法 1. 同线性代数中矩阵乘法的定义: np.do ...

  9. [operator]ubuntu + sublime + anaconda 自动补全、指定python版本

    ubuntu .sublime.anaconda都安装好之后,首先要解决的就是自动补全问题 Perference---->Browes Packages --->新建一个Python的文件 ...

  10. srping boot thymeleaf 学习总结 (2) - thymeleaf properties 国际化 mesaage

    thymeleaf获取配置properties中的数据与thymeleaf国际化(摘录) 使用thymeleaf提供的国际化 有时候会有直接在模板中获取配置文件properties中的配置信息,比如: ...