jquery中on()与click()的区别是什么?


本文摘自PHP中文网,作者青灯夜游,侵删。

区别:1、【click()】属于静态加载,当页面加载完,就不在为新增加的元素添加点击事件;2、【on()】属于动态加载,当页面加载完,可以为新增加的元素添加事件,但是必须选定父级元素。

相关推荐:《jQuery教程》

jquery中on()与click()的区别

  • click()属于静态加载,当页面加载完,就不在为新增加的元素添加点击事件。

  • on()属于动态加载,当页面加载完,可以为新增加的元素添加事件,但是必须选定父级元素。

二者在绑定静态控件时没有区别,但是如果面对动态产生的控件,只有 on() 能成功的绑定到动态控件中。

以下实例中原先的 HTML 元素点击其身后的 Delete 按钮就会被删除。而动态添加的 HTML 元素,使用 click() 这种写法,点击 Delete 按钮无法删除;使用 On() 方式可以。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

<!DOCTYPE html>

<html>

    <head>

        <meta charset="UTF-8">

        <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script>

    </head>

 

    <body>   

        <h1>展示jQuery中on()和click()的区别</h1>

 

        <p>

            <span>点击生成新按钮。NewOn生成的Delete按钮行为用on()实现,NewClick生成的Delete按钮行为用click()实现。</span>

        </p>

        <div class="test">

            <button class="new" id="newon">NewOn</button>

            <button class="new" id="newclick">NewClick</button>

            <ul class="li">

                <li>原先的HTML元素on<button class="deleteon">Delete</button></li>

                <li>原先的HTML元素click<button class="deleteclick">Delete</button></li>

            </ul>

        </div>

    </body>

        <script type="text/javascript">

            $("#newclick").click(function(){

                $(".li").append('<li>动态添加的HTML元素click<button class="deleteclick">Delete</button></li>');

            });

            $("#newon").click(function(){

                $(".li").append('<li>动态添加的HTML元素on<button class="deleteon">Delete</button></li>');

            });

            $(".delete").click(function(){

                $(this).parent().remove();

            });

             

            $(".li").on('click', ".deleteon", function(){

                $(this).parent().remove();

            })

            $(".deleteclick").click(function(){

                $(this).parent().remove();

            });

        </script>

</html>

更多编程相关知识,请访问:编程教学!!

以上就是jquery中on()与click()的区别是什么?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

如何使用jQuery中click()方法

jQuery中smart ui是什么

jQuery字母大小写转换函数有哪些

jQuery中#是什么意思

jQuery如何判断是否点击按钮

jQuery 2.x和1.x的区别是什么

jQuery如何判断是否是其对象

jQuery ajax区别是什么

jQuery怎么动态修改css样式

jQuery可见性过滤选择器有哪些

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...