2016-12-08 17 views
1

で作業していない私はVISタイムラインマップに参加するマウスダウンイベントに問題がある...のMouseDown VISタイムライン

これは私のコードの構造です:

<div id="firstDiv"> 
    <div id="timelineMap"></div> 
</div> 

$("#firstDiv").mousedown(function (e) { 
    console.log("mouseDown"); 

    initialW = e.pageX; 
    initialH = e.pageY; 

    $("#firstDiv").bind("mouseup", function1); 
    $("#firstDiv").bind("mousemove", function2); 
    } 
}); 

しかし、私はをクリックしたときfirstDiv何も起こっていない。私は問題がtimelineMapの内側にあると思う。それがなければmousedownが働く。そのdivの中にvisタイムラインマップがある。奇妙なことは、mousedownの代わりにclick()を使用すると動作しますが、その場合は明らかに私はmouseupを使用できません。

私はjQueryの3.0のよう

+0

廃止予定の関数 'bind'を使用せず、ネストされたイベント(attach event inside event)を使用しないでください。 –

+0

@ZakariaAcharkiが正しかった。代わりに新しいメソッド 'jQuery.on()'を使用してください。 – Anson

答えて

0

を把握するのに役立ち、.bind()してくださいが廃止されました。 jQuery 1.7以降、イベントハンドラをドキュメントに添付するための.on()メソッドに取って代わられていたため、その使用は既に推奨されていませんでした。

代わりon()を使用してみてください:

$("#firstDiv").on('mousedown', function (e) { 
    console.log("mouseDown"); 
    initialW = e.pageX; 
    initialH = e.pageY; 
}); 

$("#firstDiv").on("mouseup", function1); 
$("#firstDiv").on("mousemove", function2); 

は注:あなたの投稿コード内の余分な}をしました。

このヘルプが必要です。

+0

答えてくれてありがとう...私はあなたが提案した方法を変更しようとしましたが、mousedownはまだ動作しません...問題はvisタイムラインにバインドされる必要があります。 – farso92

関連する問題