jquery定位问题

时间:2011-01-19 10:20:41

标签: jquery

我有以下代码。 “YellowLeft”和“YellowRight”是用于向左或向右移动标签的按钮。在页面启动时,我希望隐藏“YellowLeft”,因为我无法在开始时将标签移动到左侧。一旦我滚动回到开头,我希望该按钮再次消失。

为此,我有一个名为newPos的变量,它检查offset是否保持相同的值。如果是这样,“YellowLeft”按钮应该再次消失。但理论上,虽然我将标签向左移动,但偏移值永远不会改变。因此newPos和offset始终保持相同的值,第一次单击时按钮消失。

我的错误在哪里?

谢谢!

$(document).ready(function()
        {

            $("#YellowLeft").hide();
            var offset = $("#Tab1").offset();
            var newPos = offset;
            newPos.left = offset.left;

            $("img").click(function()
            {
                var tabs_list = $("div#TabsWrapper > ul");
                if($(this).is("#YellowRight"))
                {
                    tabs_list.animate({ left: "-=155" }, 500);
                    $("#YellowLeft").show();
                    alert(newPos.left);
                }
                else if($(this).is("#YellowLeft"))
                {
                    tabs_list.animate({ left: "+=155" }, 500);

                    if (newPos.left == offset.left) {
                        $("#YellowLeft").hide();
                    }
                }
            });
        })

1 个答案:

答案 0 :(得分:1)

查看相关的HTML代码会很有用,但我认为您需要更改一行:

if (newPos.left == offset.left) {

为:

if ($('#Tab1').offset().left == offset.left) {