JQuery offset()使用CSS3列返回负值?

时间:2011-10-05 09:13:00

标签: jquery css3 offset

我是jQuery的新手。我想得到特定元素的顶部偏移量。我使用以下方法:

var top = $("img").offset().top;

然而,它返回负值。我不明白为什么它会返回负值?最小值应该为零,或者我得到任何错误?

P.S。我在html文件中使用CSS3列中断。

非常感谢!!!

编辑:html文件的正文:

<div id="chapter-0">
    <div>
        <h1 xml:lang="en-us" id="toc-anchor">Main Title</h1>
        <h2 xml:lang="en-us" id="toc-anchor-1">Subtitle 1</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
        <h2 xml:lang="en-us" id="toc-anchor-2">Subtitle2</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
        <h2 xml:lang="en-us" id="toc-anchor-3">Subtitle3</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
    </div>
    <div>
        <img src="images/Table-01_fmt.jpeg" alt="Table-01.indd">
    </div>
</div>

我用于检测图像高度的代码:

$(\"img\").each(function(i) {
    var top = $(this).offset().top;
    alert(top);
}

1 个答案:

答案 0 :(得分:0)

如果您发布img所在的html部分以及应用了CSS,那将很容易为您提供帮助。

编辑:

我检查了你发布的代码,我在jQuery部分有语法错误,经过纠正后我在Firefox和谷歌浏览器中都尝试过,它运行正常。

那么请你试试下面的html文件看看?唯一的区别是双引号并添加了jQuery代码中缺少的右括号。

这适用于Chrome。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js'></script>

    <script type='text/javascript'>
        $(document).ready(function () {
            $("img").each(function(i) {
                var top = $(this).offset().top;
                alert(top);
            });
        });
    </script>

</head>
<body>
<div id="chapter-0">
    <div>
        <h1 xml:lang="en-us" id="toc-anchor">Main Title</h1>
        <h2 xml:lang="en-us" id="toc-anchor-1">Subtitle 1</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
        <h2 xml:lang="en-us" id="toc-anchor-2">Subtitle2</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
        <h2 xml:lang="en-us" id="toc-anchor-3">Subtitle3</h2>
        <p xml:lang="zh-hk"> text</p>
        <p xml:lang="zh-hk"> text</p>
    </div>
    <div>
        <img src="images/Table-01_fmt.jpeg" alt="Table-01.indd" />
    </div>
</div>
</body>
</html>