Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ragne滑块气泡无法随滑块移动而移动_Javascript - Fatal编程技术网

Javascript ragne滑块气泡无法随滑块移动而移动

Javascript ragne滑块气泡无法随滑块移动而移动,javascript,Javascript,我创建了一个范围滑块,在其中显示一个带有滑块值的气泡 (此示例基于,我只是尝试基于JS重新创建) 下面是一个函数,假设该函数使气泡随滑块移动: function displayValue(event) { var rangeInput = document.getElementById('myRange'); var width = rangeInput.offsetWidth; var min = rangeInput.getAttribute('min'); var max

我创建了一个范围滑块,在其中显示一个带有滑块值的气泡

(此示例基于,我只是尝试基于JS重新创建)

下面是一个函数,假设该函数使气泡随滑块移动:

function displayValue(event) {
  var rangeInput = document.getElementById('myRange');
  var width = rangeInput.offsetWidth;

  var min = rangeInput.getAttribute('min');
  var max = rangeInput.getAttribute('max');

  var newPoint = (event.target.value - min)/(max - min);

  var offset = -1.3;

  var newPlace;
  if (newPoint < 0) {
    newPlace = 0;
  } else if (newPoint > 1 ) {
    newPlace = width;
  } else  {
    newPlace = width * newPoint + offset;
    offset -= newPoint;

  }

  var outputElement = document.getElementById('myOutput');  
  outputElement.value = event.target.value;
  outputElement.style.left = newPlace;
  outputElement.style.marginLeft = offset = "%";


}
函数显示值(事件){
var rangeInput=document.getElementById('myRange');
变量宽度=rangeInput.offsetWidth;
var min=rangeInput.getAttribute('min');
var max=rangeInput.getAttribute('max');
var newPoint=(event.target.value-min)/(max-min);
var偏移量=-1.3;
var newPlace;
如果(新点<0){
newPlace=0;
}否则如果(新点>1){
newPlace=宽度;
}否则{
新位置=宽度*新点+偏移;
偏移量-=新点;
}
var outputElement=document.getElementById('myOutput');
outputElement.value=event.target.value;
outputElement.style.left=newPlace;
outputElement.style.marginLeft=offset=“%”;
}
此函数仅部分起作用(如气泡内的值更新,但位置不更新)

为什么sldier没有更新它的位置


我在您的代码中发现了几个可能是打字错误的异常

而不是:

outputElement.style.left = newPlace;
outputElement.style.marginLeft = offset = "%";
尝试:

outputElement.style.left = newPlace + 'px';
outputElement.style.marginLeft = offset + "%";