2009-08-11 2 views
2

Эй, я пытаюсь сделать небольшую функцию, где я могу щелкнуть значок, и появится окно, похожее на лайтбокс, но закрепленное на значке. Есть ли способjquery - сделать div, где я нажимаю?

  1. Скажите, где значок на экране, а затем
  2. Есть верхний левый угол моей коробки находится там, где значок, а затем
  3. ли моя коробка появится в том, что место нахождения?

Спасибо!

ответ

8
// 1.Tell where the icon is on the screen 
var off = $("#iconId").offset(); 

// 2.Have the top left corner of my box placed where the icon is 
var div = $("#divId"); 
div.css({ position: "absolute", top: off.top, left: off.left }); 

// 3.Have my box appear in that location? 
div.show(); 
+2

+1. OP следует напомнить, что это должно быть помещено в блок $ (document) .ready (function() {}. – Vince

+0

Это именно оно! Спасибо! – Ethan

0
$(function() { 
    $("#icon").click(function(){ 
     var offset = $(this).offset(); 
     $("#pop").css("position","absolute").css("top",offset.top+$(this).height()).css("left",offset.left); 
     $("#pop").show(); 
    }); 
}); 

смещение получает Вас положение значка, а затем использовать эти значения, чтобы установить верхние и левые коррекции для всплывающего окна

Смежные вопросы