• vue.js事件处理器


    事件监听可以使用v-on指令:

    v-on的基本使用

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8" />
    5. <title>title>
    6. <script src="js/vue.js" type="text/javascript" charset="utf-8">script>
    7. head>
    8. <body>
    9. <div id="app">
    10. <div @click="change()">点击div>
    11. <input @input="changeinput" />
    12. div>
    13. <script>
    14. const vm = new Vue({
    15. el:'#app',
    16. data(){
    17. return {
    18. }
    19. },
    20. methods:{
    21. change(){
    22. console.log('1111');
    23. },
    24. changeinput(){
    25. console.log('222');
    26. }
    27. }
    28. })
    29. script>
    30. body>
    31. html>

    运行效果

    v-on的参数传递

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8" />
    5. <title>title>
    6. <script src="js/vue.js" type="text/javascript" charset="utf-8">script>
    7. head>
    8. <body>
    9. <div id="app">
    10. <button @click="btnClick">按钮1button>
    11. <button @click="btnClick()">按钮2button>
    12. <button @click="btnClick(123)">按钮3button>
    13. <button @click="btnClick()">按钮4button>
    14. div>
    15. <script>
    16. const vm = new Vue({
    17. el: '#app',
    18. data() {
    19. return {
    20. }
    21. },
    22. methods: {
    23. /* btnClick() {
    24. console.log("点击XXX");
    25. }, */
    26. /* btnClick(val) {
    27. console.log(`点击了${val}`);
    28. } */
    29. /* btnClick(e) {
    30. console.log(e);
    31. } */
    32. btnClick(e, val) {
    33. console.log(e + '-----' + val);
    34. }
    35. }
    36. })
    37. script>
    38. body>
    39. html>

    运行效果    

    注意:
                如果我只要传递e事件 那么可以不写参数,当然也可以写一个参数叫$event
                
               

                事件传多个参
                 如果我要传递多个参数  那么既要写参数,也要写$event,方法中用e和形参进行接收
                

    methods: {
                        /* btnClick() {
                            console.log("点击XXX");
                        }, */

                        /*     btnClick(val) {
                                console.log(`点击了${val}`);
                            } */

                        /* btnClick(e) {
                            console.log(e);     

    v-on的事件修饰词                                                                                                                     

    1. html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8" />
    5. <title>title>
    6. <script src="js/vue.js" type="text/javascript" charset="utf-8">script>
    7. <style>
    8. .div {
    9. width: 200px;
    10. height: 100px;
    11. background: #f00;
    12. overflow: scroll;
    13. }
    14. style>
    15. head>
    16. <body>
    17. <div id="app">
    18. <div @scroll="onScroll" class="div">滚动事件的默认行为 (即滚动行为) 将会立即触发滚动事件的默认行为 (即滚动行为) 将会立即触发滚动事件的默认行为 (即滚动行为)
    19. 将会立即触发滚动事件的默认行为 (即滚动行为) 将会立即触发div>
    20. div>
    21. <script>
    22. const vm = new Vue({
    23. el: '#app',
    24. data() {
    25. return {}
    26. },
    27. methods: {
    28. divClick() {
    29. console.log('点击了div');
    30. },
    31. btnClick() {
    32. console.log('点击了btn');
    33. },
    34. change() {
    35. console.log('阻止了默认行为');
    36. },
    37. change2() {
    38. console.log('阻止了默认行为也阻止了冒泡');
    39. },
    40. show(msg) {
    41. console.log(msg);
    42. },
    43. showself() {
    44. console.log('我是点击自身才触发');
    45. },
    46. doThis() {
    47. console.log('点击了a');
    48. },
    49. onScroll() {
    50. for (let i = 0; i < 5000; i++) {
    51. console.log('@');
    52. }
    53. console.log('333333');
    54. }
    55. }
    56. })
    57. script>
    58. body>
    59. html>

     注意:

        1. .stop的使用,btn的click事件不会传播,不会冒泡到上层,调用event.stopPropagation() 常用
                


                   
               

                2. .prevent 调用event.preventDefault阻止默认行为  常用
                去百度


                3. 修饰符可以串联 常用
                


                        去百度
                

                4. 添加事件监听器时使用事件捕获模式 不常用
                


                    div1外面
                    

                        div2里面
                    

                


                5.   只当在 event.target 是当前元素自身时触发处理函数  不常用
                


                    
                

                6.   点击事件将只会触发一次 不常用
                点击触发

                  7. .passive 修饰符尤其能够提升移动端的性能。不常用
                


                    滚动事件的默认行为 (即滚动行为) 将会立即触发滚动事件的默认行为 (即滚动行为) 将会立即触发滚动事件的默认行为 (即滚动行为) 将会立即触发滚动事件的默认行为 (即滚动行为) 将会立即触发
                
        

  • 相关阅读:
    WebGIS瓦片基础原理
    力扣(LeetCode)178. 分数排名(2022.06.27)
    智慧公厕的原理与优势,了解一种更智能的卫生设施
    MyBatis 学习(七)之 缓存
    网页黑白滤镜
    nginx系列第二篇:nginx源码调试
    Windows|MySql下载与安装教程
    Jenkins List Git Branches插件 构建选择指定git分支
    springboot+vue企业废物回收员工任务管理系统java
    神探大战观影解说
  • 原文地址:https://blog.csdn.net/m0_68633696/article/details/126143929