2

これを求めるのは本当にばかげていると思いますが、驚くべきことに、すでに1時間頭をぶつけています。コードは次のとおりです。

<div id="img1" onfocus="alert('test');" onblur="alert('test');">
 <img id="image1" name="image1" src="image1.jpg"  alt="Pciture 1">&nbsp;
</div>

どちらのイベント ( Focus/ Blur) も関数を呼び出す必要がありますが、この単純なテスト ( alert) でさえ機能しません。これらのタグは両方とも本文セクションにあり、DOCTYPE定義を変更しようとしましたが、効果はありません。

W3 はエラーを吐き出します:

属性「ONFOCUS」はありません

私の主な目標は、イベントをタグで直接使用することですimgが、何らかの理由でそれも機能しません。

4

8 に答える 8

8

デフォルトでは、div はインタラクティブな要素ではないため、フォーカスがまったく得られません。フォーカス可能になるようtabindexな属性を divに追加してみてください。tabindex="1"

于 2011-05-03T09:58:00.613 に答える
4

<div><img>通常はフォーカス イベントやブラー イベントはありませんが、回避策としてタブインデックスを設定してみてください。ちょっと変ですけどね。

http://www.quirksmode.org/dom/events/blurfocus.html

于 2011-05-03T09:58:51.060 に答える
2

onfocus イベントは、要素がポインティング デバイスまたはタブ ナビゲーションによってフォーカスを受け取ると発生します。この属性は、次の要素で使用できます: A、AREA、LABEL、INPUT、SELECT、TEXTAREA、および BUTTON。

ソース: w3c HTML4 仕様

diva も aもimgフォーカスを受け取ることも失うこともできません。これらはインタラクティブな要素ではありません。設定でフォーカスを取得できるようにすることができますtabindex

div、span、table など、デフォルトではフォーカスできないノードがありますが、tabindex が適用されている場合はフォーカスを受け取ることができます

出典: http: //nemisj.com/focusable/

于 2011-05-03T09:58:58.120 に答える
0

W3C バリデーターは正しく、div タグには属性として onfocus または onblur がありません。こちらをご覧ください: http://www.w3schools.com/tags/tag_DIV.asp

于 2011-05-03T09:58:08.137 に答える
0

多分イベントonmouseoveronmouseoutあなたが探しているものです

于 2011-05-03T10:00:57.113 に答える
0

イベント ハンドラーにインライン JS を使用しないでください。代わりに目立たない JavaScriptを使用してください。

于 2011-05-03T20:18:51.943 に答える
0

Div タグには、onfocus および onblur イベントはありません。マウスオーバー、マウスアウトなどをお試しください。

于 2011-05-05T04:42:58.200 に答える
-1

頭をぶつけるのをやめることができます。最初は痛いです。次に、div 要素で onfocus や onblur を使用できません。

リンクを確認してください: W3C

何を達成しようとしていますか?

于 2011-05-03T09:58:15.890 に答える