当前位置: 首页 > 编程日记 > 正文

Selenium-js弹窗浮层

学习过js的小伙伴会发现,我们在一些实例中用到了alert()方法、prompt()方法、prompt()方法,他们都是在屏幕上弹出一个对话框,并且在上面显示括号内的内容,使用这种方法使得页面的交互性更精彩,实际上我们经常会在进行网页浏览时简单这种类型的对话框,在用户与应用程序进行双向交流时,经常要用到对话框。

javascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prompt()来获得,可以利用这些对话框来完成js的输入和输出,实现与用户能进行交互的js代码

第一种:alert警告框

alert()方法是这三种对话框中最容易使用的一种,她可以用来简单而明了地将alert()括号内的文本信息显示在对话框中,我们将它称为警示对话框,要显示的信息放置在括号内,该对话框上包含一个“确认”按钮,用户阅读完所显示的信息后,只需单击该按钮就可以关闭对话框。

第二种:confirm确认框

confirm()方法与alert()方法的使用十分类似,不同点是在该种对话框上除了包含一个“确认”按钮外,还有一个“取消”按钮,这种对话框称为确认对话框

第三种:prompt提示框

alert()方法和confirm()方法的使用十分类似,都是仅仅显示已有的信息,但用户不能输入自己的信息,但是prompt()可以做到这点,她不但可以显示信息,而且还提供了一个文本框要求用户使用键盘输入自己的信息,同时她还包含“确认”或“取消”两个按钮,如果用户“确认”按钮,则prompt()方法返回用户在文本框中输入的内容(是字符串类型)或者初始值(如果用户没有输入信息);如果用户单击“取消”按钮,则prompt()方法返回null,我们称这种对话框为提示框

switch_to_alert函数捕捉弹出的对话框

#! /usr/bin/env python
#coding=utf-8
from selenium import webdriver
import timedriver = webdriver.Firefox()
driver.get("xxxxxxxxxxxx")
time.sleep(3)#alert提示框
driver.find_element_by_id("alert").click()
time.sleep(3)
#定位到这个alert弹窗上
alert = driver.switch_to_alert()
print(alert.text())
#确定
alert.accept()
#取消
#alert.dismiss()#confrim确认框
driver.find_element_by_id("confirm").click()
time.sleep(3)
confirm = driver.switch_to_alert()
print(confirm.text)
confirm.accept()
#confirm.dismiss()#prompt弹框
driver.find_element_by_id("prompt").click()
time.sleep(3)
prompt = driver.switch_to_alert()
prompt.send_keys("xxxxx")
time.sleep(3)
print(prompt.text)
prompt.accept()
#prompt.dismiss()
driver.quit()

alert()、confirm()、prompt()的区别和联系:

警告框alert()

alert是警告框,只有一个按钮“确定”无返回值,警告框经常用于确保用户可以得到某些信息。当警告框出现后,用户需要点击确定按钮才能继续进行操作。语法:alert("文本")。

确认框confirm()

confirm是确认框,两个按钮,确定或者取消,返回true或false。确认框用于使用户可以验证或者接受某些信息。当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。如果用户点击确认,那么返回值为 true。如果用户点击取消,那么返回值为 false。语法:confirm("文本")

提示框prompt()

prompt是提示框,返回输入的消息,或者其默认值提示框经常用于提示用户在进入页面前输入某个值。当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。语法:prompt("文本","默认值")

转载于:https://www.cnblogs.com/R-bear/p/7468621.html

相关文章:

JAVA基础(JAVA 执行环境) 第一天

JAVA程序有3中执行环境。 (1)能够单独运行的程序,称为Java Application(Java应用程序)。 (2)在Internet浏览器中运行的程序,称为 Java Applet(JAVA小用用程序)。Applet是一个在WEB浏…

ERP图形目录

这些天正在研究ERP,老师要求我们自己制作一个ERP出来。找了不少资料,就这个图形目录比较有学习价值。这个图形目录是PDF文件,包括销售管理、采购管理、库存管理、制作标准管理、计划管理、车间管理、JIT生产管理、质量管理、财务管理、人力资…

JSP学习笔记(五):日期处理、页面重定向、点击量统计、自动刷新和发送邮件...

一、JSP 日期处理: 使用JSP最重要的优势之一,就是可以使用所有Java API。本节讲述Java中的Date类,它在java.util包下,封装了当前日期和时间。 Date类有两个构造函数。第一个构造函数使用当前日期和时间来初始化对象:D…

完善登录注册页面

实验内容 综合运用基本组件完成一个注册与登录的应用程序设计。要求基于基础控件,综合使用Intent实现Android的Activity之间信息交换。系统包含启动页、注册页、登录页3个页面,具体要求如下: 在第2周上机作业的基础上,完善登录注…

EF 批量 添加 修改 删除

1批量添加 db.T_Investigator.AddRange(list) 2批量删除 db.T_Investigator.RemoveRange(list) 3批量修改 for 循环修改。 注意: 先查询出来,最后savechange(),写在一个事务中,一次请求一个上下文。…

在IE7中无效的解决办法

通过ShowModalDialog 打开页面,在POSTBACK时,打开新的页面&#xff0c; 在IE6下没问题,只有在IE7下,会重新打开一新页面&#xff0c; 其实只要把<base target"_self"/> 放到 <head>下即可。 <head> <base target"_self"/> …

简单的纹理管理器

简单的纹理管理器 罗朝辉 (http://www.cnblogs.com/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议游戏中的资源一般都是由资源管理器来处理的&#xff0c;资源管理器负责载入&#xff0c;释放&#xff0c;以及根据资源ID返回相关资源供游戏程序使用。下面改写sph…

记住密码以及Android 列表的操作

1.综合使用RecycleView&#xff0c;CardView&#xff0c;Adapter实现一个宝宝相册&#xff0c;并将其加入到实验一形成的应用中&#xff0c;使得&#xff1a;用户成功登录后转到宝宝相册所在的主界面。还要求实现&#xff1a;用户单击对应的列表子项的不同部位时给出不同的Toas…

python-----利用filecmp删除重复文件

以下代码素材自取&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1fL17RjKyGjpvpeeUFONCaQ 提取码&#xff1a;zgiw # coding:utf-8 import os import filecmp# 将指定目录下的所有文件的路径存储到all_files变量中 def get_all_files(path, dirs):all_files []for d …

如何设置REUSE_ALV_GRID_DISPLAY'的单个单元格的是否可以输入

代码如下&#xff1a;具体说明参见红色说明(本例子是从订单明细提取两个字段的数据到内表) REPORT ZALV_EDIT.TYPE-POOLS: SLIS.*- FieldcatalogDATA: IT_FIELDCAT TYPE LVC_T_FCAT.DATA: X_FIELDCAT TYPE LVC_S_FCAT.DATA: X_LAYOUT TYPE LVC_S_LAYO. "第1步&#xff1a;…

记一次生产的bug

第一个在代码中使用 new SimpleDateFormat("EEEE")来判断周几。在本地测试过程中通过日志打印出来的周几 比如周日对应的是中文汉字“星期日”&#xff0c;然后使用判断 if("星期日".equals(weekDay)){ } (其中weekDay是要使用的日期)。在本地测试通过后…

企业ERP制度的“执行力”

一直都很想说这个话题。可能很多人不是太理解这个标题&#xff0c;企业ERP制度是指完成了ERP系统实施的企业&#xff0c;为了维持ERP系统的持续运行而建立的ERP运行制度。执行力就不用多说了&#xff0c;就是ERP运行制度到底执行了多少&#xff0c;怎么执行的问题。许多管理软件…

python学习点滴记录-Day10-线程

多线程 协程 io模型 并发编程需要掌握的点&#xff1a; 1 生产者消费者模型2 进程池线程池3 回调函数4 GIL全局解释器锁 线程 理论部分 &#xff08;摘自egon老师博客&#xff09; 一、定义&#xff1a; 在传统操作系统中&#xff0c;每个进程有一个地址空间&#xff0c;而且默…

适配设备的简易新闻浏览器

同时兼容手机和平板。 进入应用后先显示新闻列表&#xff0c;当在手机上使用时&#xff0c;使用单页模式&#xff0c;单击列表项会打开新的页面。 当在平板上使用时&#xff0c;使用双页模式&#xff0c;单击左侧列表项时直接更新右侧新闻内容页。 MainActivity.java pack…

this.$router.push、replace、go的区别

1.this.$router.push() 描述&#xff1a;跳转到不同的url&#xff0c;但这个方法会向history栈添加一个记录&#xff0c;点击后退会返回到上一个页面。 用法&#xff1a; 2.this.$router.replace() 描述&#xff1a;同样是跳转到指定的url&#xff0c;但是这个方法不会向histor…

jQuery 实现图片的特效1[原]

用jQuery实现图片的动画效果非常简单.以下演示 jQuery里面所用到的参数 HIDE SHOW FADEOUT FADEIN 的不同. 在线演示:单击演示 代码分析: //hide and show fadeout and fadein $("input:eq(0)").click(function(){ $("img").fadeOut(3000); }); …

【设计模式】 模式PK:策略模式VS状态模式

1、概述 行为类设计模式中&#xff0c;状态模式和策略模式是亲兄弟&#xff0c;两者非常相似&#xff0c;我们先看看两者的通用类图&#xff0c;把两者放在一起比较一下。 策略模式&#xff08;左&#xff09;和状态模式&#xff08;右&#xff09;的通用类图。 两个类图非常相…

vs2008与IIS 7.0使用在vista上时出现的问题及解决方法(Internet Explorer 无法显示该页面)(VS2008: IE Cannot Display Web Page)...

我的系统是Vista Ultimate SP1,先安装了vs2008 ,然后再安装了IIS7.0之后就出现了一系列的问题。 问题&#xff1a;通过vs2008启动程序调试时报错。错误提示为&#xff1a;Internet Explorer 无法显示该页面 解决方法&#xff1a; 首先是安装一些必要的附件程序。 1.打开控制面板…

云服务中IaaS、PaaS、SaaS的区别

越来越多的软件&#xff0c;开始采用云服务。 云服务只是一个统称&#xff0c;可以分成三大类。 IaaS&#xff1a;基础设施服务&#xff0c;Infrastructure-as-a-servicePaaS&#xff1a;平台服务&#xff0c;Platform-as-a-serviceSaaS&#xff1a;软件服务&#xff0c;Softwa…

Android项目框架综合实例

综合使用ViewPager、Fragment、RecycleView等&#xff0c;实现类似“网易新闻浏览器 ”的项目综合框架&#xff0c;要求实现&#xff1a; 底部导航&#xff0c;分别是“首页”&#xff0c;“视频”&#xff0c;“讲讲”&#xff0c;“我的”&#xff1b;底部导航不要求滑动翻页…

配置Windows Server 2003 的RADIUS Server的方法

配置Windows Server 2003 的RADIUS Server的方法1、安装Windows 2003操作系统&#xff1b;2、添加角色&#xff08;须插网线&#xff09;&#xff1b;3、添加组件->网络服务、证书服务&#xff1b;4、管理工具->域安全策略->帐户策略->密码策略&#xff1b;&#x…

Y15BeTa蜂鸣器唱歌程序-演奏版

最优版&#xff0c;自由演奏你的音乐&#xff01; 每天进步一点点&#xff01; 2018-12-09最新版 #include<bits/stdc.h> #include<windows.h> using namespace std; int md[8]{0,262,294,330,349,392,440,494}, mz[8]{0,523,587,659,698,784,880,988}, mg[8]{0,10…

实验6 触发器的使用

实验6 触发器的使用 实验目的 掌握触发器的创建、修改和删除操作。 掌握触发器的触发执行。 掌握触发器与约束的不同。二、实验要求 1.创建触发器。 2.触发器执行触发器。 3.验证约束与触发器的不同作用期。 4.删除新创建的触发器。 三、实验内容 &#xff08;一&#x…

神经网络二(Neural Network)

#!/usr/bin/env python # -*- coding: utf-8 -*- """ __title__ __author__ wlc __mtime__ 2017/9/04 """ import numpy as np import randomclass Network(object):def __init__(self,sizes):#size神经元个数list[3,2,4]self.num_layers l…

要想成功 需要了解的东西

凭我工作的经历来看 在it界要想成功必须要做到以下几点。 1 基本的开发语言不一定精通&#xff0c;但是一定要熟练的使用。 2 对公的主营业务一定要熟悉&#xff0c;不但要熟悉&#xff0c;而且要烂熟于心。如果不能做到这一点&#xff0c;那么起码对自己负责的工作要做到烂熟…

合并下载的Solaris镜像为DVD文件的方法

有很多朋友想安装solaris10操作系统&#xff0c;但是没有系统盘或者在官方网站下载之后不会合成。经过多次试验之后现在把正确的方法写下&#xff0c;以方便大家的学习之用。1。先到官方网站下载最新的系统包&#xff0c;下载之后的软件包为&#xff1a;sol-10-u4-ga-x86-dvd-i…

oracle测试环境表空间清理

测试场景下&#xff0c;使用的oralce遇到表空间的占用超大&#xff0c;可以采用如下的方式进行空间的清理 首先使用sqlplus连接数据库sqlplus sys/passwordorcl as sysdba 之类进行数据库的连接没然后进行如下的操作 ##创建表空间对于自己的测试库和表等最好都建立自己的表空间…

Google Chrome(谷歌浏览器) 发布下载

Google Chrome 下载地址&#xff1a;http://www.google.com/chrome 刚刚装上&#xff0c;还没怎么用&#xff0c;说一下大概印象&#xff0c;整体非常简洁&#xff0c;只有两个菜单选项。访问上明显感觉很快&#xff0c;比 Firefox 快&#xff0c;也比 IE7快&#xff1b;对网页…

实验 5   数据的完整性管理

实验 5 数据的完整性管理 一、实验目的 掌握实体完整性的实现方法。掌握用户定义完整性的实现方法。掌握参照完整性的方法。二、实验内容 数据库的完整性设置。三、实验步骤 可视化界面的操作方法&#xff1a;实体完整性 将 student 表的“sno”字段设为主键&#xff1a;在表…

16-acrobat por 简单使用指南

用于pdf编辑&#xff0c;这里我主要讲下图片的切割和保存&#xff0c;以及合并&#xff1a; 切割选中区域双击 合并的话&#xff0c;在编辑界面选中对象&#xff0c;复制&#xff0c;在另一个pdf的编辑界面粘贴&#xff0c;并挪动位置&#xff1a; 转载于:https://www.cnblogs.…