这个条件语句中的逻辑问题

时间:2016-05-18 14:42:44

标签: javascript jquery

我如何编写此代码,以便当地球元素与太阳元素垂直对齐时,警报信息不会显示,而是当地球元素具有相同的水平和垂直坐标时。

我尝试过同时使用.position().offset()方法,但是没有用。您会认为使用相同的左侧位置和顶部位置可以解决问题,但是当满足左侧位置条件语句时会弹出警告消息。

我无法正确编写条件语句。

var positionplanet = $("#Earth").position();
var positionsun = $("#Sun").position();

if (
    Math.round(positionplanet.left) == Math.round(positionsun.left) &&
    Math.round(positionplanet.top) == Math.round(positionplanet.top)
) {
    alert("planet and sun are on the same spot");
}

1 个答案:

答案 0 :(得分:4)

在if语句的第二个条件中使用了positionplanet.top两次。改为:

var positionplanet = $("#Earth").position();
var positionsun = $("#Sun").position();

if    (Math.round(positionplanet.left) == Math.round(positionsun.left) 
    && Math.round(positionplanet.top) == Math.round(positionsun.top))
    { alert("planet and sun are on the same spot");}