vue はデフォルトのフォーカスを実装します

WBOY
リリース: 2023-05-11 09:33:06
オリジナル
1525 人が閲覧しました

Vue では、ページの読み込み時に要素にデフォルトのフォーカスを設定する必要がある場合、v-focus ディレクティブを使用してこれを実現できます。

まず、Vue インスタンスのディレクティブ オプションで v-focus ディレクティブを設定する必要があります:

Vue.directive('focus', {
  inserted: function (el) {
    el.focus()
  }
})
ログイン後にコピー

次に、テンプレートで v-focus ディレクティブを使用して、デフォルトのフォーカスを設定します。指定された要素:

<input v-focus>
ログイン後にコピー

ページが読み込まれると、入力ボックスが自動的にフォーカスを取得します。

入力ボックスのデフォルトのフォーカスの設定に加えて、場合によっては、他の要素のデフォルトのフォーカスも設定する必要があります。たとえば、フォームでは、ユーザーの入力を容易にするために、カーソルを最初のテキスト ボックスに配置する必要があります。この時点で、 ref 属性を使用して要素に名前を付け、手動で要素を取得して、マウントされたフック関数にフォーカスを設定できます。

<template>
  <form>
    <label for="username">用户名:</label>
    <input ref="username" type="text" id="username">
    <br>
    <label for="password">密码:</label>
    <input type="password" id="password">
    <br>
    <button type="submit">登录</button>
  </form>
</template>

<script>
export default {
  mounted() {
    this.$refs.username.focus()
  }
}
</script>
ログイン後にコピー

上記の設定では、ページが読み込まれると、テキスト ボックスがデフォルトのフォーカスを使用すると、ユーザーはテキスト ボックス上で直接入力操作を実行して、ユーザー エクスペリエンスを向上させることができます。

ページ上に複数のテキストボックスが同時に存在する場合など、デフォルトのフォーカスのみを設定すると、他のテキストボックスの操作に影響を与える場合があるので注意してください。この時点で、フォームの送信時にカーソルを次のテキスト ボックスに自動的に移動するなど、問題を解決する他の方法がいくつかあります。

つまり、Vue でデフォルトのフォーカスを実装するには、v-focus ディレクティブを使用するか、要素を手動で取得して focus() メソッドを呼び出すことができます。実際のアプリケーションでは、実際のシナリオに応じて適切な方法を選択し、ユーザー エクスペリエンスとページ インタラクションの最適化を考慮する必要があります。

以上がvue はデフォルトのフォーカスを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!