1

わからないことが少しあります。私はそれを説明するためにjsfiddleを作成しました。

http://jsfiddle.net/sandrodz/czfGy/9/(画像を含むように更新)

したがって、ユーザーが画像にカーソルを合わせると、「晴れた曇り」というテキストを含むdivが表示されます。このマッサージは変化するため、小さくしたり大きくしたりできます。

画像の中央に配置したい。しかし、残念ながら、私のjqueryロジックは正しく機能せず、ホバーは左にシフトして表示されます。

何か案は?

$("#tempicon img").hover(function() {
    divW = ($(this).next("div").width() / 2) - ($(this).outerWidth() / 2);
    $(this).next("div").css({marginLeft: -divW }).animate({ opacity: "show" }, "fast");
}, function() {
    $(this).next("div").animate({opacity: "hide"}, "fast");
});

混乱を増すために、私は他のdivで同じ正確なコードを使用し、それは完全に機能します:S

4

1 に答える 1

0

動作中のアップデート(Firefox / Chrome)を試してください。middle of image - width/2 of label正しいです。

私がしたこと:ポジショニングを理解する際に役立つ変数名を追加しました。また、marginLeftを単純にに変更しますleft。この計算では、すべて(画像とラベルdiv)が同じ「オフセット親」position内にあり、そのうちの1つのプロパティを変更しない限り、問題はありません。

于 2012-07-11T22:02:44.873 に答える