javascript javascript是一种前端脚本语言 网页: html+javascript 作用: 1. 数据校验 2. 动态更新网页内容(局部刷新) 3. 网页特效 html是网页的身体,javascript是网页的灵魂
1. 如何结合网页使用
两种方式:
1. 内嵌:
<!-- 声明js-->
<script language="javascript">
<!-- 在网页的身体部分写入这句话-->
document.write("hello javascript");
</script>
2. 外嵌引入:
<script language="javascript" src="xi.js"></script>
2. 如何定义变量
1. 定义变量
var a=10;
var b=10.98;
var c=true;
var d="哈哈";
var e;
document.write(a+"</br>");
2. 定义函数:
<script language="javascript">
function print(){
document.write("hello");
document.write("js");
}
</script>
调用函数按钮: <input type="button" onclick="print()" value="点我">
3. 弹窗
alert("");
confirm("");
prompt("");
function print(){
ve=prompt("hello js");
document.getElementById("tanchuang").value=ve;
}
调用函数按钮: <input type="button" onclick="print()" value="点我">
获取弹窗内容<input type="text" id="tanchuang">
3. 流程控制之if语句
1. if/else结构
if(条件){
javascript脚本
}else{
javascript脚本
}
2. 多重if结构
if(条件2){
javascript脚本
}else if(条件2){
javascript脚本
}else{
javascript脚本
}
3. 嵌套if结构
if(条件){
if(){}else{}
}else{
if(){}else{}
}
练习:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>js</title>
<script language="javascript">
function jisuan(){
var zffs=document.getElementById("zffs").value;
var shuliang=document.getElementById("shuliang").value;
var danjia=document.getElementById("danjia").value;
if(shuliang !="" && danjia!=""){
if(!isNaN(shuliang) && !isNaN(danjia)){
var cjj=shuliang * danjia;
if(zffs==1){
cjj=cjj*0.6;
}else if(zffs==2){
cjj=cjj*0.5;
}else if(zffs==3){
cjj=cjj*0.3;
}else{
cjj=cjj
}
document.getElementById("chengjiao").value=cjj
}else{
alert("数量和单价只能是数字")
}
}else{
alert("数量和单价都必填")
}
}
</script>
</head>
<body>
支付方式:
<select id="zffs">
<option value="0">--请选择您的支付方式--</option>
<option value="1">现金6折</option>
<option value="2">微信5折</option>
<option value="3">支付宝3折</option>
</select><br/>
竞拍数量:<input type="text" id="shuliang"><font color="red">*,不能为空,只能输数量</font><br/>
竞拍单价:<input type="text" id="danjia"><font color="red">*,不能为空,只能输数量</font><br/>
最终成交:<input type="text" id="chengjiao"><font color="red">*,不能为空,只能输数量</font><br/>
<input type="button" value="计算金额" onclick="jisuan()">
</body>
</html>
4. javascript在自动化项目中的场景实战
1. 处理只读标签
# readonly="readonly" 只读属性
<input type="text" id="username" readonly="readonly"/>
# 去掉只读,向文本框输入内容
time.sleep(3)
js= "document.getElementById('username').removerAttribute("readonly")"
driver.execute_script(js)
time.sleep(3)
driver.find_element_by_id("username").send_keys("admin")
2. 处理隐藏标签
# style="display:none; 隐藏标签属性
<input type="text" id="password" style="display:none;"/>
# 处理隐藏元素,改为显示
time.sleep(3)
js= "document.getElementById('password').style.display='block'"
driver.execute_script(js)
3. 自动化操作流程高亮显示
js= "document.getElementById('password').setAttribute('style','border:3px solid red;')"
driver.execute_script(js)
4. 滚动条的处理
5. 直接为日期空间强制赋值
6. 协助特殊元素定位
7. 富文本的处理
8. 调用原生页面的js函数