HTML入力フィールドをクリックしてもフォーカスが当たらない
質問
問題が発生し、何がこの動作を引き起こしているのかがわかりません。 私は入力フィールドにアクセスすることができず
textarea
にアクセスできません。
残念ながら、JS、HTML、CSSは非常に大きいので、ここにすべてを掲載することはできません。
この奇妙な動作をデバッグするときに、何を調べればよいのか、誰か教えてください。
アップデイト
にカーソルを合わせると
input
フィールドの上にカーソルを移動すると、テキストカーソルが表示されますが、それをクリックするとフィールドにフォーカスが当たりません。 フィールドにアクセスするには
タブ
キーを押してフィールドにアクセスでき、その上で右クリックしてからフィールドをクリックすると、そのフィールドにフォーカスが当たります。
...そして、いや、彼らには
disabled
または
readonly
属性があります。)
どのように解決するのですか?
<ブロッククオートクリックしてもフィールドにフォーカスが当たりません。
のデフォルトアクションをキャンセルしたようです。 マウスダウン イベントのデフォルトのアクションをキャンセルしたようです。 HTML と JS を検索して onmousedown ハンドラを探し、次のような行を探します。
return false;
この行は、クリックによるフォーカシングを止めている可能性があります。
Re: あなたのコメントですが、このハンドラを追加するコードを編集できないのでしょうか? もしできるのであれば、最も簡単な解決策は、単に
return false;
ステートメントを削除することです。
は、イベントトリガーを上書きせずに、機能だけを追加する方法はありますか?
それは、ハンドラがどのようにアタッチされるかによります。 伝統的な登録方法を使用して添付されている場合、たとえば 要素.onmousedown のように、伝統的な登録方法を用いている場合は、それ用のラッパーを作成することができます。
var oldFunc = element.onmousedown;
element.onmousedown = function (evt) {
oldFunc.call(this, evt || window.event);
}
このラッパーは false を返さないので、要素のデフォルト・アクション(フォーカス)をキャンセルすることはありません。 もし、あなたのイベントが、次のような高度な登録方法を用いて添付されている場合 addEventListener または アタッチイベント の場合、関数名/参照を使用してイベントハンドラを削除し、上記のようなラップ関数で再度アタッチするだけです。 追加されたのが無名関数で、その参照を取得できない場合、唯一の解決策は、別のイベントハンドラをアタッチし、要素に手動でフォーカスするために 要素.focus() メソッドを使用して手動で要素をフォーカスすることです。
関連
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] 入力テキストボックスの値を取得する
-
[解決済み] Reduxの非同期フローになぜミドルウェアが必要なのか?
-
[解決済み] レンダリング後に入力フィールドにフォーカスを設定するには?
-
[解決済み] 入力フィールドから属性を読み込むと、HTMLエンコーディングが失われる
-
[解決済み] HTMLフォームのSELECTタグ/入力の読み取り専用化
-
[解決済み] HTMLのテキスト入力でクリックするとすべてのテキストが選択される
-
[解決済み】なぜHTMLは "chucknorris "を色と見なすのか?
-
[解決済み】HTMLのテキスト入力で数値入力しかできない。
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ブートストラップ・モーダルに埋め込むとSelect2が機能しない
-
[解決済み] ExtJS 4のイベントハンドリングについて
-
[解決済み] サブドメインにまたがってlocalStorageを使用する
-
[解決済み] moment.jsでミュータビリティを回避するには?
-
[解決済み] AngularJS - ngRepeatフィルタリングされた結果の参照を取得する方法
-
[解決済み] Javascriptで動的に命名されたメソッドを呼び出すにはどうすればよいですか?
-
[解決済み] jQueryで入力ファイルが空かどうかをチェックする方法
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] querySelectorAllがない場合、ライブラリを使用せずに属性で要素を取得する?
-
[解決済み] これは純関数ですか?