事件绑定、动画、表单提交

发布于:2023-01-19 ⋅ 阅读:(165) ⋅ 点赞:(0)

事件绑定

第一种

bind():语法:$("选择器").bind("事件类型","事件处理函数")

第二种

on():可以绑定多个事件

语法:$("选择器").on({"事件类型":"事件处理函数"},{"事件类型":"事件处理函数"})

第三种(on可以实现动态绑定也就是事件委托)

事件委托:可以实现新增加的元素节点依然可以添加事件

语法:$("选择器").on("事件类型","选择器","事件处理函数")

第四种(注册委托事件)

delegate():语法

$("选择器").on("选择器","事件类型","事件处理函数")

缺点:只能注册委托事件

解绑

off():解绑多个事件

unbind():解绑单个事件

对象转换

DOM对象转换为jQuery对象用document

jQuery对象转换为DOM对象用 obj.get(index)”方法 或 obj[index]方法

动画

显示隐藏

show():显示隐藏的元素

hide():隐藏显示的元素

toggle():显示隐藏交替

淡入淡出

fadeIn():从无到有慢慢显示隐藏的元素

fadeOut():从有到无慢慢隐藏显示的元素

fadeToggle():淡入淡出交替

滑动

slideUp():从下往上滑动隐藏元素

slideDown():从上往下显示元素

slideToggle():上滑下滑交替

示例效果:

 

示例代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="js/jquery-3.6.0.min.js"></script>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: red;
            /* display: none; */
        }
    </style>
</head>

<body>
    <input type="button" value="隐藏" class="btn1">
    <input type="button" value="显示" class="btn2">
    <input type="button" value="显示隐藏交替" class="btn3">
    <input type="button" value="淡入" class="btn4">
    <input type="button" value="淡出" class="btn5">
    <input type="button" value="淡入淡出交替" class="btn6">
    <input type="button" value="上滑" class="btn7">
    <input type="button" value="下滑" class="btn8">
    <input type="button" value="上滑下滑交替" class="btn9">
    <div></div>
    <script>
        $(function() {
            $(".btn1").click(function() {
                $("div").hide()
            })
            $(".btn2").click(function() {
                $("div").show()
            })
            $(".btn3").click(function() {
                $("div").toggle()
            })
            $(".btn4").click(function() {
                $("div").fadeIn()
            })
            $(".btn5").click(function() {
                $("div").fadeOut()
            })
            $(".btn6").click(function() {
                $("div").fadeToggle()
            })
            $(".btn7").click(function() {
                $("div").slideUp()
            })
            $(".btn8").click(function() {
                $("div").slideDown()
            })
            $(".btn9").click(function() {
                $("div").slideToggle()
            })
        })
    </script>
</body>

</html>

自定义动画

animate()方法用于创建自定义动画。

语法:$(选择器).animate({params} , speed, callback);

  • 必需的params参数定义形成动画的CSS属性。

  • 可选的speed参数规定效果的时长。它可以取以下值: "slow"、"fast"或毫秒。

  • 可选的callback参数是动画完成后所执行的函数名称。

表单提交

表单有两个较特殊的属性,一个是method,是规定用于发送表单的HTTP方法(提交表单的方式);还有一个是action,是规定当提交时向何处发送表单的数据(要提交表单的地址)。Form表单有一个自动提交的功能(submit)有时候不写submit也会自动提交。可以默认不写。如果不想要表单自动提交就要写阻止表单自动提交的方法(οnsubmit="return false;")。

表单的提交方式有两种:分别是get提交(为表单的默认提交方式)与post提交。

get提交

请求参数放到请求的地址后面,参数大小受限只能传递几k的数据。由于参数再地址后面安全性不能保证。但是速度较快。

应用场景:地址栏发出的请求/超链接发出的请求。

post请求

请求参数放到请求体里面,参数大小没有限制,请求参数不可见,所以安全性更高,速度慢。

应用场景:当form表单指定请求方式为post时发出请求。

get和post的区别:

  • get被称为”明文“请求,传递的参数会暴露在地址栏中;post为”密文“传输,通过request body传递参数

  • GET请求在URL中传送的参数是有长度限制的(一般为255个字符),而POST请求没有长度限制。

  • GET请求只能进行url编码,而POST支持多种编码方式

  • get传输不安全,相对post比较安全

表单提交原则

表单提交主要是通过表单元素的name值等于value值进行传递数据的,但是表单提交时需要注意一下原则;name相同的表单提交格式

如果name值相同的表单提交,该name值会出现多次,且对应不同表单的值。没有name的表单、disabled的表单元素

表单元素没有name属性、含有disabled属性都会被禁止提交。

在进行表单控制时,如果某一个表单即不可以被编辑但同时也需要被提交,可以设置readonly属性,通讨绘含有readonly属性的寿单添加特定的css样式来模拟disabled的样式


网站公告

今日签到

点亮在社区的每一天
去签到