У меня есть скрипт, который вставляет всплывающие элементы в DOM. Он устанавливает их свойства top
и left
css относительно координат мыши в событии щелчка. Он прекрасно работает, за исключением того, что высота этих «всплывающих» элементов является переменной, и некоторые из них выходят за пределы видимой области окна браузера. Я хотел бы избежать этого.

Вот что у меня есть
<script type="text/javascript">
$(function () {
$("area").click(function (e) {
e.preventDefault();
var offset = $(this).offset();
var relativeX = e.pageX - offset.left;
var relativeY = e.pageY - offset.top;
// 'responseText' is the "popup" HTML fragment
$.get($(this).attr("href"), function (responseText) {
$(responseText).css({
top: relativeY,
left: relativeX
}).appendTo("#territories");
// Need to be able to determine
// viewable area width and height
// so that I can check if the "popup"
// extends beyond.
$(".popup .close").click(function () {
$(this).closest(".popup").remove();
});
});
});
});
</script>