使用拉斐尔用滚动条绘制不移动的东西
draw something that doesn't move with scroll bar using Raphael
我用拉斐尔画了一个人物。该数字非常大,因此浏览器窗口显示滚动条。现在,我希望即使用户移动滚动条,图形的一部分也能保持静止。怎么能做到这一点呢?此外,我想根据滚动条的位置更改图形(例如,显示滚动条的 x 坐标)。这可能吗?谢谢。
这是我问题的解决方案。要使图形的一部分保持静止而不考虑滚动,请创建两个画布,一个用于应随滚动移动的部分,另一个用于静止部分。然后将第二块画布放入<div style="position:fixed">
.这是代码:
<div id="part1">
<script type="text/javascript">
var paper1 = Raphael("part1", 1000, 200);
// draw the figure
</script>
</div>
<div id="part2" style="position: fixed">
<script type="text/javascript">
var paper2 = Raphael("part2", 1000, 200);
// draw the figure
</script>
</div>
请注意,仅当图的两个部分分开时,此代码才有效。我不知道如果它们重叠,它们是否仍然可以在两个画布中绘制。
若要根据滚动条的位置更改图形,请使用以下代码。getScrollX() 函数改编自 http://www.howtocreate.co.uk/tutorials/javascript/browserwindow 处的代码。
<script type="text/javascript">
function getScrollX() {
var scrOfX = 0;
if (typeof (window.pageYOffset) == 'number') {
//Netscape compliant
scrOfX = window.pageXOffset;
} else if (document.body
&& (document.body.scrollLeft || document.body.scrollTop)) {
//DOM compliant
scrOfX = document.body.scrollLeft;
} else if (document.documentElement
&& (document.documentElement.scrollLeft || document.documentElement.scrollTop)) {
//IE6 standards compliant mode
scrOfX = document.documentElement.scrollLeft;
}
return scrOfX;
}
window.onscroll = function() {
var x = getScrollX();
// change the figure
}
</script>
相关文章:
- 如何检测用户是否移动了滚动条
- 将滚动条移动到页面中间的控制位置
- 无滚动条的移动设备全屏广告图像
- fullPage.js滚动条:true使浏览器随deelay一起移动
- 实现滚动条,但光标根本没有移动?另外,如果可以的话,请告诉我如何在此嵌入鼠标滚动
- 动态添加/创建的移动滚动条无法正常工作
- javascript Y 滚动条在向下按钮的鼠标上移动,但窗口水平
- 使用拉斐尔用滚动条绘制不移动的东西
- 在不使用滚动条的情况下在巨大的 html 页面周围移动浏览器视图
- 网络和移动设备中的滚动条
- 在“多选”中对选项进行排序时,滚动条不会移动
- ASP.NET滚动条未在不可见的行选择上向下移动
- Dojo移动显示滚动条
- 当我打开灯箱时,垂直滚动条正在向上移动
- 元素如果在mcustomscrollbar中拖动,则不会向下移动滚动条
- jquery scrollTop工作,但不移动滚动条
- 如何将默认的谷歌地图信息窗口滚动条移动到关闭按钮的右侧
- Jquery-在特定时间后自动移动滚动条到特定位置
- 移动滚动条时,始终将窗口保持在中心位置
- 不能在iframe内移动滚动条