前端5JQ

  • js获取用户输入
  • JS类属性操作
  • JS样式操作
  • 事件
  • JS事件案例
  • JQuery类库
  • JQuery基本使用
  • 基本筛选器(了解)
  • 表单筛选器

Js获取用户输入

普通数据(输入,选择)
​ 标签对象.value

获取文件数据的时候:

标签对象.value只能获取到文件路径,而标签对象.files结果是一个数组,可以通过索引获取具体文件对象。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<input type="text" name="" id="d1">
<input type="radio" name="gender" value="female" id="d2">女
<input type="radio" name="gender" value="male" id="d3">男

<select name = "" id = "d4">
  <option value="111">1</option>
  <option value="222">2</option>
  <option value="333">3</option>

</select>

<input type = "file" name="file" id="d5">
</body>
</html>

image

image

Js类属性操作

标签对象.classList					查看所有的类属性
标签对象.classList.contains()			存在返回True,不存在返回False
标签对象.classList.add(cls)				添加类
标签对象.classList.remove(cls)			删除指定类
标签对象.classList.toggle()				存在即删除,不存在就添加

image

image

image

image

JS样式操作[简单了解]

简单了解,css样式修改,应该由css来操作。

语法:标签对象.style.属性名
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<p>我困我就要睡,今天不rap</p>

</body>
</html>

image

image

事件

事件就是给html标签绑定了一些额外的功能(能够触发js代码的运行),

就是用户点击某个html元素,会起动一段Js。

onclick 当用户点击某个对象调用的事件句柄 
ondbclick 当用户双击某个对象时调用的事件句柄 
onfocus 元素获得焦点    //练习输入框 
onblur 元素失去焦点 	//应用场景:通常用于表单元素,当元素内容被改变时触发.(select 联动)
onchange 域的内容被改变	应用场景:通常用于表单元素,当元素内容被改变时触发(select 联动)
onkeydown 某个键盘按键被按下
onkeyup		某个键盘按键被松开
onkeypress 某个键盘按键按下并松开
onmousedown 鼠标按钮被按下
onmousemove 鼠标被移动
onmouseout  鼠标从某元素移开
onmouseover 鼠标移到某元素之上
onselect 	在文本框中的文本被选中时发生
onsubmit	在确认按钮被点击,使用的对象是form

模拟练习

绑定事件的两种方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <button id ="d1" onclick="func1()">按我</button>    
    
    
    <!--#绑定方式1    写一个功能函数,在标签属性里添加onclick
    -->
        <script>
            function  func1(){
              alert('你按到我了,八嘎雅鹿')
            }
        </script>


<!--绑定方式2 #:在特定的标签属性上创建功能函数

-->
  <input id ="d2" type="button" value="点我" >
        <script>
        let buttonEle = document.getElementById('d2')
       buttonEle.onclick = function (){
            alert('你点我干嘛')
        }
        </script>
</body>
</html>

JS事件案例

image

image

JS事件案例

1.校验用户输入,点击onclick,提示

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<p><input type="text" id="username">
    <span class="errors" style="color: chartreuse"></span>
</p>

<p><input type="password" id ="password">
<span class="errors" style="color:red"> </span>

</p>

<button id = "btn">提交</button>

<script>
    let btnEle = document.getElementById('btn');
    btnEle.onclick = function(){
      let usernameVal = document.getElementById('username').value;
      let passwordVal = document.getElementById('password').value;
      //4.判断用户名喝密码是否合法
      if(usernameVal==='lzl'){
          let span1Ele =document.getElementsByClassName('errors')[0];
          span1Ele.innerText= '用户名不能是lzl'
      }
    if(passwordVal.length === 0){
        let span2Ele = document.getElementsByClassName('errors')[1];
        span2Ele.innerText = '用户名密码不为空'
    }}

</script>
</body>
</html>

image

JQuery类库

什么是JQuery

JQuery是一个高效,精简并且功能丰富的javaScript工具库
JQuery极大的简化了JavaScripts编程

JQuery的优势

开源,免费

便捷的选择器,

方便DOM操作。

方便的动画特效

易用的ajax操作

丰富的插件扩展

解决浏览器兼容性效果

JQuery选择器

通过选择器,可以获取到页面元素,可以获取到页面元素,JQuery具有强大的选择器,跟css3选择器类似

1.基本选择器

id 				根据给定的id匹配一个元素
element 		根据给定的元素标签名匹配所有元素
.class			根据给定的css类名匹配元素
*				匹配所有元素
prev-sbilings	匹配prev 元素之后的所有 siblings 元素

2.层级选择器

1.ancestor descendant 	在给定的祖先元素下匹配所有的后代元素
2.parent>child 			在给定的父元素下匹配所有的子元素
3.prev+next		        匹配所有紧接在prev 元素后的next 元素
4.prev-siblings			匹配prev元素之后的所有siblings元素

----------------------------------------------------
    层级选择器:
        x和y可以为任意选择器
        $("x y");// x的所有后代y(子子孙孙)
        $("x > y");// x的所有儿子y(儿子)
        $("x + y")// 找到所有紧挨在x后面的y
        $("x ~ y")// x之后所有的兄弟y

3.过滤选择器【了解】

:first  获取第一个元素
:not(selector) 去除所有与给定选择器匹配的元素
:even	匹配所有索引值为偶数元素,从0开始计数
:odd 	匹配所有索引值为奇数的元素,从0的开始计数
:eq(index)   匹配一个给定索引值的元素
:gt(index)   匹配所有大于给定索引值的元素
:lang	 选择指定语言的所有元素,1.9+
:last 获取最后个元素
:lt(index) 匹配所有小于给定索引值的元素
:header    匹配如h1,h2,h3之类的标题元素
:animated  匹配当前获取焦点的元素
:focus	   匹配当前获取焦点的元素
:root      选择该文档的根元素   1.9+
:target	   选择由文档URI的格式化识别码表示的目标元素

4.可见性选择器

:hidden	   匹配所有不可见元素或者type为hidden的元素
:visible 	匹配所有的可见元素

5.属性选择器

[attribute]  匹配包含给定属性的元素
[attribute=value] 匹配给定的属性是某个特定值的元素
[attribute!=value] 匹配所有不含指定的属性,或者属性不等于特定值的元素
[attribute^=value] 匹配给定的属性是某些值开始的元素
[attribute$=value]	匹配给定的属性是某些值结尾的元素
[attribute*=value] 匹配给定的属性是以包含某些值的元素
[attrSel1][attrSel2][attrSelN] 复合属性选择器,需要同时满足多个条件使用

6.子元素选择器

:first-child	匹配所有选择器:(之前的选择器)的第一个子元素
:firest-of-type 结构化伪类,匹配E的父元素的第一个E类型的孩子
:last-child    匹配最后一个子元素
:last-of-type    结构化伪类,匹配E的父元素的最后一个E类型的孩子
:nth-child()	 匹配其父元素下的第N个子或者奇元素或者偶元素
:nth-last-child() 选择所有他们父元素的第N个子元素,计数从最后一个元素开始到第一个 1.9+
nth-last-of-type() 选择的所有他们的父级元素的第N个子元素,计数从最后一个元素到第一个
:nth-of-type()  选择同属于一个父元素之下,并且标签签名相同的子元素的第N个
:only-child 	如果某个元素是父类元素中唯一的子元素,那么将会被匹配
:only-of-type   选择所有没有兄弟元素,且具有相同元素名称的元素

7.表单选择器

​ 可以看成是属性选择器优化而来

注意:$(':checked')  
	$('input:checked') 
:input	匹配所有的input ,textrarea,select和button元素
:text    匹配所有的单行文本框
:password 匹配所有的密码框
:radio    匹配所有的单选按钮
:checkbox    匹配所有复选框
:submit	   匹配所有提交按钮,匹配type="submit"的input或者button
:image     匹配所有图像域
:reset    匹配所有重置按钮
:button   匹配所有按钮
:file		匹配所有的文件域

8.表单对象选择器

:enabled    匹配所有可用元素
:disabled   匹配所有不可用元素
:checked    匹配所有选中的被选中元素(复选框,单选框等,select 中option)
posted @ 2022-08-28 19:03  名字长的像一只老山羊  阅读(44)  评论(0编辑  收藏  举报