0

すべてのアプリ アイコンが揺れるホーム画面上の iPhone の削除モードと同様に、オブジェクトの (x,y) 座標を操作するオープン ソース アルゴリズムがあるかどうか、誰かが知っていますか? javascript/jquery を使用してこれをシミュレートしようとしているので、アルゴリズムは js であることが望ましいですが、このアルゴリズムが既に開発されていて別の言語である場合、移植はそれほど難しくないと思います。

4

1 に答える 1

2

頭のてっぺんから削除モードでの iPhone の揺れがどのように見えたか正確には覚えていませんが、目的に合わせて次のスクリプトの値を微調整できることを願っています。要素にクラスがある場合、要素にランダムな X/Y 移動を提供しshakingます。

function randomRange(lowerRange, upperRange) {
    return Math.floor(Math.random() * (upperRange - lowerRange + 1)) + lowerRange;
}

function shakeElement(elem) {
    if ($.data($(elem)[0], "pos") === undefined) {
        $.data($(elem)[0], "pos", {
            top: $(elem).position().top,
            left: $(elem).position().left
        });
    }

    if($(elem).hasClass("shaking")) {
        $(elem).animate({
            top: $.data($(elem)[0], "pos").top + randomRange(-8, 8),
            left: $.data($(elem)[0], "pos").left + randomRange(-8, 8)
        }, 100, function() {
            shakeElement(this);
        });
    }
}

$(".shaking").each(function() {
    shakeElement(this);
});

これは、動作するjsFiddle デモです。</p>

于 2012-04-21T01:34:59.777 に答える