App.vue 825 B

12345678910111213141516171819202122232425262728
  1. <template>
  2. <div id="app">
  3. <router-view/>
  4. <portal-target name="notification-outlet"></portal-target>
  5. <portal-target name="notification-detail"></portal-target>
  6. <portal-target name="notification-search"></portal-target>
  7. </div>
  8. </template>
  9. <script>
  10. export default {
  11. name:'App',
  12. mounted(){
  13. (/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', (e) => {
  14. // 这里加了个类型判断,因为a等元素也会触发blur事件
  15. if(['input', 'textarea'].includes(e.target.localName)) {
  16. setTimeout(()=> {
  17. document.scrollingElement.scrollTo(0, document.scrollingElement.scrollTop);
  18. }, 200);
  19. }
  20. }, true)
  21. },
  22. }
  23. </script>
  24. <style lang="less">
  25. @import "./less/index.less";
  26. </style>