6

title='要素サンプル'

上の図に示すように、ユーザーが領域をクリックしたときにのみ要素をドラッグできるようにしたいのは、「ドラッグを許可する」と示されている他のすべての領域では、「ドラッグを無効にする」と示されているドラッグを許可しないことです。以下は私が現在持っているコードです。キャンセルオプションに複数のセレクターを渡すことができないということだけがうまくいきます。オブジェクトとスペースで区切られたセクターを渡そうとしましたが、うまくいきません。私は何を間違っていますか?助けてください。

    $(".e-note").draggable({
        stop: function(e, ui) {
            // alert(ui.position['top']);
        },
        cursor: 'move',
        opacity: 0.4,
        cancel: '.e-note-body', // How do i pass more than one selectors here?
        distance:20
    })
4

2 に答える 2

14

複数のセレクターを提供して、複数のセレクターを組み合わせることができます。

cancel: '#selector1, .selector-two'

,引用符で囲まれた各セレクターを区切るコンマ()に注意してください。

于 2012-04-15T23:49:22.030 に答える
1

または、レイアウトが複雑で、ドラッグを「キャンセル」する要素が非常に多い場合は、代わりにオプションをcancel使用handleできます。

handle: '.allow_drag_start'

この方法では、まったく使用する必要はありませんcancel

これには、最近見つけた追加の短所があります。あなたのサイトが例えばを使用している場合。http://touchpunch.furf.com/マウスイベントをタッチイベントに変換するために、cancelドラッグだけでなく、タッチデバイスのネイティブスクロールと 2 本指のピンチズームもすべてキャンセルします。私の場合、ハンドル以外のすべての要素でスクロールとズームが機能するようにしました。

handle一般的には、これが使用されるべきものでcancelあり、少し回避策であると思います。

于 2015-05-24T01:04:36.537 に答える