0

今、これに夢中になっています...

jsFiddle で動作するアニメーションを local/ftp で動作させようとしていますが、何も起こりません。

このライブラリのすべてを含めました

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>       <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>

関数を持つアニメーションを実行できます $(this).hide(...しかし、私が言ったように、アニメーション関数ではありません。

これは私が使用しているスクリプトです。

$(".wrapper").mouseenter( function() {
    $(this).animate({
        left: -1*$(".leftbox").width()
    }, 500);
});

$(".wrapper").mouseleave( function() {
    $(this).animate({
        left: "0px"
    }, 500);
});

そして、ここにインデックス ページにコピー アンド ペーストした jsFiddle があります。何も変えていません。 http://jsfiddle.net/ewNpL/1/

4

1 に答える 1

1

コメントからの回答の投稿:

次のように、準備ができているハンドラー内にすべての js/jQuery コードをラップしてみてください

$(function(){
 $(".wrapper").mouseenter( function() {
    $(this).animate({
        left: -1*$(".leftbox").width()
    }, 500);
});

$(".wrapper").mouseleave( function() {
    $(this).animate({
        left: "0px"
    }, 500);
});

});

javascript がその魔法を示し始める前に DOM の準備ができているように、ready ハンドラを使用することをお勧めします。同じ理由で、マークアップの後にすべてのスクリプト部分をモードにすることもお勧めします。

コードがフィドルで正常に実行されたのはなぜですか? jsfiddle はデフォルトでスクリプト部分を Ready ハンドラ内にラップするため....

于 2013-03-12T18:55:51.243 に答える