0

オフセット値ですが、コンソールはそれが定義されていないことを教えてくれます:

ui is not defined

私の HTML には、jquery スクリプトが含まれています。

 <script language="javascript" type="text/javascript"
        src="/templates/protostar/js/jquery.min.js"></script>
<script language="javascript" type="text/javascript"
        src="/templates/protostar/js/jquery-ui.min.js"></script>
<script language="javascript" type="text/javascript"
        src="/templates/protostar/js/jclip.js"></script>
<script language="javascript" type="text/javascript"
        src="/templates/protostar/js/cp.js"></script>

わかりません...これは私のjQueryコードです:

<script type="text/javascript" language="javascript">
(function ($) {
    $(document).ready
    (
        function () {
            $('.mapban').parent().jclip(0, 0, 1060, 750);

            $('#mapplane').draggable({ containment: $('#containermy'),
            scroll: false,
            drag: function() {  
            console.log(ui.offset);
             },


            });

 })
</script>
4

2 に答える 2

4

ドラッグ ハンドラー メソッドで、呼び出された変数を使用していますがui、エラーの原因である関数のスコープ内のどこにも宣言されていません。

ドラッグ イベントハンドラーは 2 つの引数を受け取ります。1 つ目はイベント、2 つ目はuiウィジェット イベントに固有のデータを含むオブジェクトです。以下に示すように、これらのパラメーターを受け入れるようにイベント ハンドラー メソッドのシグネチャを拡張する必要があります。

jQuery(function ($) {
    $('.mapban').parent().jclip(0, 0, 1060, 750);
    $('#mapplane').draggable({
        containment: $('#containermy'),
        scroll: false,
        drag: function (event, ui) { //here ui is the second parameter
            console.log(ui.offset);
        }
    });
})
于 2013-11-09T17:23:51.933 に答える
1

パラメータを追加するのを忘れましたdrag: function (event, ui) {

イベントドラッグを参照

(function ($) {
    $(document).ready(function () {
        $('.mapban').parent().jclip(0, 0, 1060, 750);
        $('#mapplane').draggable({
            containment: $('#containermy'),
            scroll: false,
            drag: function (event, ui) {
                console.log(ui.offset);
            },
        });
    });
});
于 2013-11-09T17:24:03.013 に答える