1
このコードでは、青い線を左右にドラッグして2つのコンテンツを分割することができます。 問題は、私がマウスを押さえてすぐに両脇に移動してマウスを放すと、それはまだ有効です。Observable fromEvenet mouseupが正しくない
だから、take untilは私が推測することはできませんか、それとも他の問題がありますか?
var split = $('.drag');
var parent = $('.Container');
var mouseDowns = Rx.Observable.fromEvent(split, "mousedown");
var parentMouseMoves = Rx.Observable.fromEvent(parent, "mousemove");
var parentMouseUps = Rx.Observable.fromEvent(parent, "mouseup");
var drags = mouseDowns.flatMap(function(e){
return parentMouseMoves.takeUntil(parentMouseUps);
});
drags.subscribe(function(e) {
var $containerWidth = $('.Container').width();
var clientX = $containerWidth - e.clientX;
if (clientX >= 50 && e.clientX >= 50) {
$('.left').css('right', clientX);
$('.right').css('width', clientX);
}
});
TNX、それをチェックし、あなたのコードを修正しました。ストリームが終了すると、それは再びマウスを聞いていない。マウスを上げた後、次のマウスをすべて聞くにはどうしたらいいですか? –
そして、あなたはjsbinへの変更を保存していません。それは私のものと同じです。 –
@ElīnaLegzdiņaありがとう。 jsbinが更新されました。私はあなたの質問を理解しませんでした。どのストリーム? 'スプリット'のmousedownイベント?私に問題を示すことができますか? – abhishekkannojia