关于input[type=search]的搜索框在ios上无法自动聚焦的问题

这个问题,试过了很多种办法,比如一开始的使用autofocus属性、到后来使用ref指令,然后通过this.$refs.inputBox.focus(),再者后来的自定义指令然后在input元素上使用v-focus,但是,这些办法都是不行的(这里可能是因为我自己写错了)。查找原因,终于知道原来是因为ios的安全机制问题,它需要用户点击才能触发聚焦。(这是一大坑)
那怎么解决呢:???
那就是除非给用户一个类似按钮的地方,让用户点击后使用js触发焦点。(那应该首页与搜索页的页面是在同一个页面,而不是两个页面)

今天看vue官方文档,看到了这个问题得解决办法

directives: {
  focus: {
    // 指令的定义, 当被绑定的元素插入到 DOM 中时……
    inserted: function (el) {
      el.focus()
    }
  }
}

你可能感兴趣的:(关于input[type=search]的搜索框在ios上无法自动聚焦的问题)