首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >边距检测的行为很奇怪

边距检测的行为很奇怪
EN

Stack Overflow用户
提问于 2013-09-09 07:39:47
回答 1查看 35关注 0票数 0

我正在制作一款游戏,目前我正在制作一款精灵移动游戏。我需要确保它不会超出某个div。我曾尝试创建一个检查顶部或左侧距离是否小于0px的函数,但它不能很好地工作。

问题:

1)精灵在边界内停止,这不是它应该停止的地方。

2)当精灵到达边缘时,它不会停止动画,而是会在完全停止之前放慢速度。它停止的实际位置有时会高出或低出几个像素。

3)精灵一旦到了某个地方就卡住了,跑不开。

下面是主要函数:

代码语言:javascript
复制
var cstop = false;
    function colCheck() {
        if (
            (char.css("top")<"0px") ||
            (char.css("left")<"0px") ||
            (char.css("top")>"500px") ||
            (char.css("left")>"800px")
        )
        {
            cstop = true;
        }
    };

然后,只要按下箭头键,就会检查cstop变量。

我一直在摆弄代码,但我似乎不明白为什么它不能像我想要的那样工作。带相关代码的jsFiddle:http://jsfiddle.net/VYkbR/13/

EN

回答 1

Stack Overflow用户

发布于 2013-09-09 08:25:08

您可能不想替换px,然后进行比较,如下所示。

代码语言:javascript
复制
var left = (+ char.css("left").replace('px', ''));

那就这么做

代码语言:javascript
复制
if(left < 0) {
    // code here..
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18689736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档