1

(まず、免責事項: 私は JavaScript / MooTools の初心者なので、解決策が些細なミスである可能性が非常に高いです)

いくつかの助けを借りて、MooTools を使用して、jsFiddle で適切に実行される単純なスライダーを配置することができました。ここにあります-> http://jsfiddle.net/wowenkho/uGcTx/

今、自分のPCで再現したいです。ここのいくつかのスレッドから、jsFiddle コードをラップする必要があることを学びました。Aptana には、次のようなコードがあります。

<html>
    <head>
            <script type="text/javascript" src="mootools_v1_2.js"></script>

            <script type="text/javascript">
                $(function()
                {
                    window.addEvent('domready',function()
                    {
                        var s = new Slider(document.id("slider-1"), document.id("slider-input-1"),
                        {
                            onChange : function(step)
                            {
                                document.id("q1_r1").set('value',step);
                                document.id("value").set('html',step);
                            }           
                        });


                        window.onresize = function () {
                            //s.recalculate();
                        };

                    });
                });
        </script>
    </head>
    <body>
        <input name="q1_r1" id="q1_r1" type="hidden">

        <span id="value">0</span>

        <p ><div class="slider" id="slider-1" tabIndex="1">
            <input class="slider-input" id="slider-input-1" />
        </div>
    </body>
</html>

私が使用している MooTools のバージョンがまったく同じではないことは知っています (jsFiddle は 1.2.5 を使用し、私は 1.2.1 を使用しています)。ここで 1.2.5 を使用することもできますが (当面はそうします)、1.2.1 を使用する必要があるため、それは目的ではありません。また、少なくとも理論的には、MooTools が正常に動作していることも知っています。以前に「hello world」を作成したことがあり、それが機能していたからです。

現時点では、スライダーではなく、スパンとテキスト ボックスのみが表示されます。

ここで些細なことを見逃していると思います。

事前に可能なすべての助けに感謝します、Jaff

4

1 に答える 1

1

実装には 2 つの問題があります。1 つ目は、コンソールで domready 関数が呼び出されていない場合、$function ラッパーから単純に取り出すことです。

                window.addEvent('domready',function()
                {
                    var s = new Slider(document.id("slider-1"), document.id("slider-input-1"),
                    {
                        onChange : function(step)
                        {
                            document.id("q1_r1").set('value',step);
                            document.id("value").set('html',step);
                        }           
                    });


                    window.onresize = function () {
                        //s.recalculate();
                    };

                });

2 つ目は、mootools のプラグインを実際に使用しているということです。js フィドルを見ると、mootools more 1.2.5.1 を使用していると表示されます。スライダー クラスを見つけるのは more パーツの内部です。それがない場合、スライダーは定義されていません。そのため、すべてのプラグインに必要なコア mootools をダウンロードするときは、詳細とスライダーのボックスもチェックしてください。mootools の Web サイトでコア用の 1.2.5 ダウンロードに移動すると、more ビルダーに移動し、それらを追加できます。

于 2012-04-19T16:44:30.937 に答える