座標がオブジェクト内にあるかどうか調べる(スクロール対応)

書式

Position.withinIncludingScrolloffsets(element)

element : オブジェクト(ID名では指定不可)

説明

親オブジェクトがスクロールした場合でも正しく座標がオブジェクト内にあるかどうか調べるにはwithinIncludingScrolloffsets()を使います。パラメータにはオフセットを求めるエレメントオブジェクトを指定します。ID名では指定できないので注意が必要です。座標がオブジェクトの内側の場合はtrue、外側の場合はfalseを返します。このメソッドを使用する前には必ずPosition.prepare()を呼び出す必要があります。

サンプルコード [実行]

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Sample</title>
<link rel="stylesheet" href="main.css" type="text/css" media="all">
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript"><!--
function check(x, y){
Position.prepare();
$("result").innerHTML = "withinIncludingScrolloffsets:"
$("result").innerHTML += Position.withinIncludingScrolloffsets($("box"),x,y);
$("result").innerHTML += "<br>within : "+Position.within($("box"),x,y);
}
// --></script>
</head>
<body>
<h1>範囲内か調べる(スクロール対応)</h1>
<form>
<input type="button" value="(110,130)" onClick="check(110,130)">
</form>
<div id="result"></div>
<div id="contents">
<div id="box">Box</div>
<div id="footer"></div>
</div>
<div id="point"></div>
</body>
</html>