いくつかの画像が掲載されたページがあります。ユーザーがいずれかの画像にカーソルを合わせると、50%不透明なオーバーレイdivをフェードインして、カーソルを合わせた画像に関する情報を表示したいと思います。これが私が今PHPに持っているコードです(読みやすくするために文字列concatsなどを削除しました):
<div class="propertyoverlay"
id="boxnum'.$propertynumber.'"
onMouseOver="fadein(\'boxnum'.$propertynumber.'\')"
onMouseOut="fadeout(\'boxnum'.$propertynumber.'\')"
>';
<h3 class="price">'.$properties[$propertynumber]['price'].'</h3>';
</div>';
これは、divIDを次のコマンドにフィードします。
function fadein(id){
$('#'+id).animate({ 'opacity': 0.5 });
}
function fadeout(id){
$('#'+id).animate({ 'opacity': 0 });
}
私が抱えている問題は次のとおりです。A。ユーザーが画像のオンとオフを繰り返してすばやくホバーすると、フェードコマンドが積み重なっていきます。mouseOverコマンドとmouseOutコマンドが呼び出されるとすぐに、残りのキューを上書きしたほうがよいでしょう。B.親の内部にネストされたH3タグにカーソルを合わせると、mouseOutが直接呼び出され、続いてマウスオーバーコマンドが呼び出され、divがフェードアウトしてから、すぐに再びフェードインします。
これを解決するためにJavascriptまたはJQueryを使用できてうれしいですが、可能であれば、当面はCSS3ベースのソリューションを避けたいと思います。お時間をいただき、誠にありがとうございます。