Js中获取元素方式
document.getElementById(id) 通过id属性值获取一个元素
document.getElementsByName(name) 通过name属性值获取元素数组
document.getElementsByTagName(tagName) 通过标签属性值获取元素数组
document.getElementsByClassName()
JS获取元素的值
元素.value 获取文本框、文本域、下拉框的value
元素.textContent 获取p标签、a标签、span标签的文本内容
元素.属性名
JS中给元素赋值
元素.value = 值
元素.textContent = 值
js操作css样式 : 元素.style.css样式属性 = 值
jQuery
jQuery是一个快速、简洁、开源的JavaScript类库
jQuery注意:
先引用,后使用,
$ is not defined 错误信息: jQuery类库没有引入或者路径不对
注意区别:
el表达式语法: ${} 美元符加大括号
jQuery语法: $() === > jQuery() 美元符加小括号
定时器是DOM的 顶级对象 window对象提供的,根据时间触发代码块执行的函数。
setTimeout() 多久执行一次,只执行一次
setInterval() 每隔多久执行一次,执行n次
setInterval(函数,毫秒值)
clearInterval()
clearTimeout()
选择器:selector
jQuery中获取元素的语法: $(selector)
获取元素/操作元素的值: jQuery.action()
基本选择器: $("#id属性值") 通过id属性值获取一个元素
基本选择器: $(".class属性值") 通过class属性值获取多个元素
基本选择器: $("标签名") 通过标签名获取多个元素
属性选择器 : 语法$("[属性名='属性值']") 通过属性名获取元素
jQuery操作元素的值
获取元素的值: 语法: $(选择器).val() 等价于: js中的元素.value
获取元素的值: 语法: $(选择器).text() 等价于: js中的元素.textContent
获取元素的值: 语法: $(选择器).html() 等价于: js中的元素.innerHtml
设置元素的值: 语法: $(选择器).val(值) 等价于: js中的元素.value=
设置元素的值: 语法: $(选择器).text(值) 等价于: js中的元素.textContent=
设置元素的值: 语法: $(选择器).html(值) 等价于: js中的元素.innerHtml=
获取元素的其他属性: $(选择器).attr("属性名")
设置元素的其他属性值: $(选择器).attr("属性名","属性值")
比如;$(选择器).attr("disabled","true")
基本选择器:(常用)
id选择器
class选择器
标签选择器
层级选择器
后代元素选择器语法: $("祖先元素 后代元素") 包括子、子元素的子元素
子元素选择器语法: $("父元素选择器>子元素选择器")
紧邻元素选择器:$("上一个元素+下一个元素") : 获取当前元素紧挨着的下一个元素
相邻元素选择器: $("上一个元素~ 后面的同辈元素") 获取当前元素的后面的所有同辈元素
表单域选择器
表单域属性选择器
位置选择器
比如:
$("#p1 span") : 获取id为p1的所有span标签后代
$("#a>p") : 获取id为a元素的所有p标签子元素
$(".myClass td") :获取class=myClass的元素的 所有 td后代标签
id的元素$("tr>#id") :获取 所有tr标签的 子元素中 id=
操作元素的属性:
通过属性名获取元素的属性值 : jQuery元素.attr("属性名")
通过属性名获取元素的属性值 : jQuery元素.prop("属性名")
设置属性对应的属性值: jQuery元素.attr("属性名","属性值")
设置属性对应的属性值: jQuery元素.prop("属性名","属性值")
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
打开的新窗口
<input type="button" value="关闭" onclick="test_close()">
<input type="button" value="打开" onclick="test_open()">
</body>
</html>
<script>
function test_open() {
window.open("demo02.html","","width=400,height=300")
}
function test_close() {
window.close()
}
</script>
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>Title</title>
6 </head>
7 <body>
8 <input type="button" value="开始" onclick="start()">
9 <input type="button" value="停止" onclick="stop()">
10 <span id="time"></span>
11 </body>
12 </html>
13 <script>
14 var interval ;//定义定时任务参数
15 function start(){
16 interval = setInterval(ck,1000);
17 }
18 function stop() {
19 clearInterval(interval)//将对应的定时任务取消
20 }
21 // setTimeout(ck,1000)
22 function ck() {
23 document.getElementById("time").textContent=new Date().toLocaleString()
24 }
25 </script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--设置一个表单,用于定时问卷调查-->
还剩<span id="time">10</span>秒<br>
姓名:<input type="text" id="username"><br>
你喜欢的语言:<input type="checkbox" onclick="ckAll()">全选<br>
<input type="checkbox" name="hobby">JavaScript
<input type="checkbox" name="hobby">nodeJs
<input type="checkbox" name="hobby">php
<input type="checkbox" name="hobby">Java
<br>
<input type="button" value="好了" onclick="ok()">
</body>
</html>
<script>
// 设置一个倒计时显示,每秒钟刷新一次计数
//定义剩余时间
var time = 10;
//设置定时任务
var interval = setInterval(changeTime,1000);
function changeTime() {
time--;
//修改id=time的本文内容
document.getElementById("time").textContent=time;
if (time == 0){
clearInterval(interval)//时间到0,清除任务
//并在3秒后将表单置为不可用
setTimeout(ok,3000)
//当计数为0时,显示“时间到”
alert("时间到")
}
}
//点击按钮“好了”,所有表单输入项置为不可用
function ok() {
//输入框禁用
// document.getElementById("username").disabled=true;
//复选框禁用
//获取所有的input标签
var arr = document.getElementsByTagName("input");
//循环数组
for(var i=0;i<arr.length;i++){
arr[i].disabled=true;
}
}
//实现全选效果
function ckAll() {
var arr = document.getElementsByName("hobby");
for(var i=0;i<arr.length;i++){
arr[i].checked=true
}
}
</script>
1 <body>
2 <input type="button" value="显示" onclick="divShow()">
3 <input type="button" value="隐藏" onclick="divHide()">
4 <div id="div01" style="width: 200px;height: 200px;background-color: aquamarine;display: none;">
5
6 </div>
7 </body>
8 </html>
9 <script>
10 function divShow() {
11 //让div显示
12 document.getElementById("div01").style.display="block"
13 }
14 function divHide() {
15 document.getElementById("div01").style.display="none"
16 }
17 </script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--引入需要使用jQuery-->
<script src="jquery-1.8.2.min.js"></script>
</head>
<body>
<div ga = 'fasfa' name="c" id="div01">大<div class="a">小</div></div>
<div id="div02"><h1 name="c" class="a">张小建</h1></div>
<input type="text" value="张小建" id="uname">
<p id="p1">李金诚<a></a></p>
</body>
</html>
<!--javascript 使用方式,第一种直接嵌入倒html
第二种外部引入-->
<script>
//写js代码
//写封装之后的jQuery代码
console.log($("#div01")) //获取id
console.log($("div")) //获取所有的div
console.log($(".a")) //获取所有的div
//用js获取输入框的值
alert(document.getElementById("uname").value)
//用jQuery方式获取
alert($("#uname").val())
//用jQuery方式
alert($("#p1").text())
alert($("#p1").html())
//给元素赋值
$("#uname").val("赵磊")
$("#p1").text("<h1>赵磊</h1>")
$("#p1").html("<h1>赵磊</h1>")
//js操作样式
document.getElementById("p1").style.color="red"
$("#p1").css("color","green")
</script>