ページ要素は div->table->tr->td です。td の画像の場合、マウスをその上に置くと大きな画像が表示され、マウスを置くと大きな画像が消えます。左:
まず、dom 要素を作成するための jq の構文を知る必要があります。$(html タグ)、たとえば、img タグはここで作成されます var img = $("< /img>");
次に、hover メソッドはマウスをホバーして離すために使用されます。構文は $(selector).hover(inFunction,outFunction),
です。
選択した要素の上にマウス ポインターを置いたときに実行する 2 つの関数を指定します。このうち、inFunction は必須、outFunction はオプションです。
このメソッドは、mouseenter イベントと Mouseleave イベントをトリガーします。
注: 関数が 1 つだけ指定されている場合は、mouseenter イベントと Mouseleave イベントで実行されます。
ここで定義されている inFunction は、大きな画像の位置を決定するもので、outFunction は、remove によって作成された img ノードです。
1) オブジェクトを作成するだけでは不十分です。jq で使用されるメソッドは、作成したオブジェクトをドキュメント ノードに追加する必要もあります。
append() - 選択した要素の末尾にコンテンツを挿入します
prepend() - 選択した要素の先頭にコンテンツ
を挿入します
after() - 選択した要素の後にコンテンツを挿入します
before() - 選択した要素の前にコンテンツを挿入します
img.attr("src", $element.find(".prePhoto").attr("src")); $element.append(img);
function getPosition($element, img, $(".fatherDiv"){ var top = $element.position().top + $element.height();//得到top:参照元素的top + 参照元素本身的height。 var maxBottom = $(".fatherDiv").height();//得到区域元素的height。 var minTop = 40; if (top + img.height() > maxBottom) { top = $element.position().top - img.height(); } if (top < minTop) {//两个if判断,保证无论怎么划动鼠标的滑轮,目标元素始终出现在屏幕上。 top = minTop; } var $firstElement = $($(".fatherDivtbody tr")[0]); img.css('top',top - $firstElement.position().top + 40); }
4) ターゲット要素の CSS はいくつかの条件を満たす必要があります:position:absolute
.changePhoto { position: absolute; width: 120px; height: 160px; left: 300px; right: 10px; float: right; z-index: 9; }