Методы вычисления положения элементов

Для вычисления положения элемента предназначены методы offset () и position (). Методы возвращают объект с двумя свойствами:
• top — смещение сверху;
• left — смещение слева.
Выведем положение элемента при щелчке на нем



Листинг 5.4. Методы offset() и position()

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Методы offset() и position()</title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
<!--
$(document).ready(function() {
$("p").one("click", function() {
var elem = $(this);
var obj1 = elem.offset();
var obj2 = elem.position();
var msg = "Offset top: " + obj1.top + " left: " +
obj1.left;
msg += " Position top: " + obj2.top + " left: " +
obj2.left;
elem.html(msg);
});
});
//-->
</script>
</head>

<body>
<p>Абзац 1</p>
<div>
<p style="margin:10px;"> Абзац 2 </p>
</div>
Щелкните на абзаце
</body>
</html>

Для получения или установки значения отступа прокрутки предназначены два метода.

• scrollTop ( [<3начение>] ) — значение отступа прокрутки сверху. Если пара
метр не указан, то метод возвращает числовое значение, а если указан, то задает
новое значение для всех элементов коллекции.

• scrollLeft ( [<3начение>] ) — значение отступа прокрутки слева. Если пара метр не указан, то метод возвращает числовое значение, а если указан, то задает новое значение для всех элементов коллекции.  Выведем значение отступа прокрутки после щелчка на элементе (

Листинг 5.5. Методы scrollTop() и scrollLeft()
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Методы scrollTop() и scrollLeft()</title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
<!--
$(document).ready(function() {
$("#div1").click(function() {
var elem = $("body");
$(this)
.html("top: " + elem.scrollTop() + " left: " +
elem.scrollLeft());
elem.scrollTop(0).scrollLeft(0);
});
});
//-->
</script>
<style>
#div1 {
margin:20px;padding:15px;
width:1500px; height:1500px;
border: black 2px dotted;
background-color:silver;
}
</style>
</head>
<body>
<div id="div1">Переместите полосы прокрутки и щелкните на сером фоне чтобы увидеть значения<br>
После щелчка значения будут приравнены к 0</div>
</body>
</html>

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *