Opera 在 scrollTop 上产生分数值
Opera producing fractional values on scrollTop
这是一个较大程序的一部分,该程序在修改高度时处理 <div>
上的滚动条。
在记录移动滚动条的各种值的输出时,会出现一个问题,即生成的值带有小数位,但仅限于 Opera(版本 44.0.2510.1449),而且这只发生在我朋友的浏览器上.在我自己的 Opera(版本 44.0.2510.1449)上我没有遇到同样的问题。
虽然这可能无关紧要,但代码的目的是找出滚动条在 ID 为 #mydiv
的 div 中的位置,并根据结果执行某些操作。
更改变量名的类似代码:
var myDivHeight = $('#mydiv').height();
$('#mydiv').height(myDivHeight + 50); //10 extra for padding
var scrollTop = $('#mydiv').scrollTop();
var scrollHeight = $('#mydiv').prop('scrollHeight');
console.log(scrollHeight + '-' + scrollTop + '=' + (scrollHeight - scrollTop));
console.log(myDivHeight + 60);
注意:60是由于页面动态变化,所以div高度已经改变。输出的结果应该是 scrollHeight - scrollTop
= myDivHeight + 60
.
这是我朋友在 Opera 上的控制台输出(给出小数 scrollTop):
这是我在 Opera 上的控制台输出:
这是 Chrome 上的控制台输出:
这是 Firefox 的控制台输出:
我找不到其他人报告此事。有其他人报告或看到过吗?有什么办法可以克服这个问题吗?
谢谢。
事实证明,花时间问问题有助于我自己回答。
首先,要克服这个问题,是使用Math.round(scrollTop.value)
的情况。
scrollTop 的规范显示它是 unrestricted double data type so Opera is handling this within spec. Reference: https://drafts.csswg.org/cssom-view/#dom-element-scrolltop
在类型从整数更改为数字之前 jQuery 中出现的问题:https://github.com/jquery/api.jquery.com/issues/608
这是一个较大程序的一部分,该程序在修改高度时处理 <div>
上的滚动条。
在记录移动滚动条的各种值的输出时,会出现一个问题,即生成的值带有小数位,但仅限于 Opera(版本 44.0.2510.1449),而且这只发生在我朋友的浏览器上.在我自己的 Opera(版本 44.0.2510.1449)上我没有遇到同样的问题。
虽然这可能无关紧要,但代码的目的是找出滚动条在 ID 为 #mydiv
的 div 中的位置,并根据结果执行某些操作。
更改变量名的类似代码:
var myDivHeight = $('#mydiv').height();
$('#mydiv').height(myDivHeight + 50); //10 extra for padding
var scrollTop = $('#mydiv').scrollTop();
var scrollHeight = $('#mydiv').prop('scrollHeight');
console.log(scrollHeight + '-' + scrollTop + '=' + (scrollHeight - scrollTop));
console.log(myDivHeight + 60);
注意:60是由于页面动态变化,所以div高度已经改变。输出的结果应该是 scrollHeight - scrollTop
= myDivHeight + 60
.
这是我朋友在 Opera 上的控制台输出(给出小数 scrollTop):
这是我在 Opera 上的控制台输出:
这是 Chrome 上的控制台输出:
这是 Firefox 的控制台输出:
我找不到其他人报告此事。有其他人报告或看到过吗?有什么办法可以克服这个问题吗?
谢谢。
事实证明,花时间问问题有助于我自己回答。
首先,要克服这个问题,是使用Math.round(scrollTop.value)
的情况。
scrollTop 的规范显示它是 unrestricted double data type so Opera is handling this within spec. Reference: https://drafts.csswg.org/cssom-view/#dom-element-scrolltop
在类型从整数更改为数字之前 jQuery 中出现的问题:https://github.com/jquery/api.jquery.com/issues/608