gpt4 book ai didi

javascript - KineticJS 中的拖动会移动整个页面,而不仅仅是可拖动的页面

转载 作者:行者123 更新时间:2023-11-28 01:22:58 25 4
gpt4 key购买 nike

我有一个填充整个图层的图像,图像很大,所以我使用(draggable:true 在图层上)滚动,然后在其顶部画一条线。问题是在 Windows Phone 8 中,当我将高度和宽度设置为设备的高度和宽度时,宽度很好,但高度太长,超过手机高度的两倍,左右滚动缓慢(每个触摸事件移动 1 帧) ),上下滚动会滚动页面本身(因为它很高),但不会滚动图层的内容。此外,当我在单独的函数中添加该行时,它根本不会显示。

<div id="content" data-role="content" class="high">
<script type="text/javascript" src="javascript/map.js"></script>

<script>
var stage = new Kinetic.Stage({
container: 'content',
width: window.innerWidth,
height: (window.innerHeight * 73) / 100
});

var layer = new Kinetic.Layer({
draggable: true
});

var imageObj = new Image();
imageObj.onload = function () {
var yoda = new Kinetic.Image({
x: 0,
y: 0,
image: imageObj,
width: 1964,
height: 1289

});
layer.add(yoda);
stage.add(layer);
}
imageObj.src = 'image/map-04.png';

navigate("A","B");

</script>
</div>

这是导航功能

function navigate(from, to, layer) {
var redLine = new Kinetic.Line({
points: [73, 70, 340, 23, 450, 60, 500, 20],
stroke: 'red',
strokeWidth: 15,
lineCap: 'round',
lineJoin: 'round'
});

layer.add(redLine);
layer.draw();
}

这是一个 JSFiddle http://jsfiddle.net/3LpVS/

提前致谢。

最佳答案

我最近遇到了一个非常类似的问题,这是由于 window.innerHeight 不准确引起的。简单的修复方法是将视口(viewport)元标记添加到我的文档顶部。

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, user-scalable=no">

关于javascript - KineticJS 中的拖动会移动整个页面,而不仅仅是可拖动的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23054196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com