jquery.but와 함께 플레이어 볼륨 슬라이더와 같은 슬라이더를 디자인했습니다. 문제는 FIREFOX에서만 처음입니다. 슬라이더를 드래그하면 정상이지만 두 번째 시간에는 브라우저가 드래그하는 것처럼 드래그합니다. 처음부터 드래그 한 후 빈 영역을 클릭하고 슬라이더를 다시 드래그하십시오. 여기에 문제가 있습니까? 나쁜 영어로 죄송합니다.파이어 폭스는 두 번째로 자체 div를 드래그합니다.
EDIT :
http://codepen.io/anon/pen/bjChB
HTML :
<div id="btn_container">
<div id="button"></div>
</div>
CSS :
div#btn_container{
width:200px;
height:60px;
position:absolute;
background:red;
margin:auto;
right:0;left:0;top:0;bottom:0;
}
div#button{
width:60px;
height:60px;
background:blue;
position:absolute;
left:0px;top:0px;
}
JQuery와 :
$(document).ready(function() {
var pressed = false;
var $this;
var x;
$("div#button").mousedown(function(e){
pressed = true;
$this = $(this);
var offset = $this.offset();
var inside = e.pageX - offset.left;
$(document).mousemove(function(e){
if(pressed){
var parentOffset = $this.parent().offset();
x = e.pageX - parentOffset.left;
if(x <= $this.parent().width() - $this.width() + inside && x >= 0 + inside)
$this.css({"left":x - inside});
}
});
});
$(document).mouseup(function(){
if(pressed){
if(x > $this.parent().width() - $this.width() - 30)
$this.animate({"left":$this.parent().width() - $this.width()} , 50);
pressed = false;
}
});
});
코드를 게시하면 도움이 될 수 있습니다! – jtheman
나는 코드를 추가했으나 파이어 폭스보다 다른 모든 브라우저에서 작동하므로 파이어 폭스의 다른 웹 사이트에서도이 문제를 보아왔다. – user1447420
확실한 코드가 중요합니다! 브라우저 불일치가 무엇인지 알아내는 것은 매우 어렵습니다. 하지만이 경우 jsfiddle이 효과적 일 것입니다. – jtheman