当前位置:   article > 正文

添加全局自动聚焦的Vue自定义功能_vue3 on-focus

vue3 on-focus
  1. import Vue from "vue"
  2. // 标签添加自动聚焦的功能
  3. // 用法:
  4. Vue.directive("fofo",{
  5. inserted(el){
  6. fo(el)
  7. },
  8. update (el) { //指令所在的标签被更新时候,触发
  9. fo(el)
  10. })
  11. function fo (el) {
  12. // el是所在的标签
  13. if(el.nodeName === "INPUT" || el.nodeName === "TEXTAREA") {
  14. // el本身的标签名就是input或者是textarea
  15. el.focus()
  16. }else {
  17. // 如果不是就往下在找找调用focus()
  18. const input = el.querySelector("input")
  19. const textarea = el.querySelector("textarea")
  20. if (input || textarea) {
  21. input && input.focus()
  22. textarea && textarea.focus()
  23. }else {
  24. console.log("请把v-fofo放在输入框标签上")
  25. }

1.自定义节点在src/utils/directives.js中书写以上代码

2.在main.js中import "@/utils/directives.js"

3.在你想自动聚焦的input或者textarea上就可以使用 v-fofo 来自动聚焦啦

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/41388
推荐阅读
相关标签
  

闽ICP备14008679号