ここでイディオムを少し混ぜています。それでも動作するはずですが、HTML からコードを分離することを含む "jQuery 方式" を使用することで、おそらくより良い結果が得られる (そして確実にコードがきれいになる) でしょう。
したがって、最初に HTML:
<a>
<img title='' class='imgclass' src='images/image1.jpg'>
</a>
onMouseOver
とonMouseOut
属性を除いて、あなたが持っていたものと同じです。
ここで、できればロードに使用する別のファイルにある jQuery を使用<script src="url.js" type="text/javascript"></script>
します。
$('img.imgclass').hover(function() {
$('#dtest2').html('Test');
}, function() {
$('#dtest2').html('Test2');
});
jQuery の主な利点の 1 つは、すべてのブラウザーの非互換性を滑らかにするように設計されているため、すべてのブラウザーに対して 1 つのコードだけで済むようになっていることです。
id
関数に渡したいについては、少しトリッキーです。その数字はどこから来て、それは何を意味するのでしょうか? それはそれを処理する方法に影響します。
他に何もなければ、次のdata-
ように HTML5 属性を使用して HTML に含めることができます。
<a>
<img title='' class='imgclass' src='images/image1.jpg' data-hover-id="1">
</a>
次に、jQuery に次の変更を加えて取得できます。
$('img.imgclass').hover(function() {
var id = $(this).data('hover-id');
$('#dtest2').html('Test ' + id);
}, function() {
var id = $(this).data('hover-id');
$('#dtest2').html('Test2 ' + id);
});
編集された質問の編集: それらはデータベースからの一意の ID であるためid
、img
. ただし、純粋に数値の は使用しないでくださいid
。i
したがって、データベースから ID を取得するために使用するものは何でも、おそらくまたはだけで何かを先頭に追加する必要がありますimg
。
次に、HTMLは次のようになります
<img id="i1" title="" src="images/image1.jpg">
そして、jQuery は$(this).attr('id')
の代わりにアクセスできます$(this).data('hover-id')
。