cuốn sách gpt4 ai đã làm

javascript - Kinectisj : Issue where mouse trail remains(Layer issue)

In lại Tác giả: Walker 123 更新时间:2023-11-28 20:02:39 28 4
mua khóa gpt4 Nike

我正在制作游戏作为自学。

我的目标是在鼠标指针后面有一条轨迹。(这有效)但是,当我在 chrome 上打开并运行它时。在达到一定的高度和宽度后,轨迹保留在 Canvas 上而不是被擦掉。谁能帮我解决这个问题吗?

这是它的 fiddle :http://jsfiddle.net/Frm27/4/但请在 chrome 或任何浏览器上尝试一下,因为问题不在 fiddle 上,而是在浏览器上!

我有以下代码:

var LimitedArray = function (upperLimit) {
var storage = [];

// default limit on length if none/invalid supplied;
upperLimit = +upperLimit > 0 ? upperLimit : 100;

this.push = function (item) {
storage.push(item);
if (storage.length > upperLimit) {
storage.shift();
}
return storage.length;
};

this.get = function (i) {
return storage[i];
};

this.iterateItems = function (iterator) {
var i, l = storage.length;
if (typeof iterator !== 'function') { return; }
for (i = 0; i < l; i++) {
iterator(storage[i]);
}
};
};

$(document).ready(function() {
var tail = new LimitedArray(50);

var i = 0, j = 0;
var stage = new Kinetic.Stage({
container: 'container',
width: window.innerWidth,
height: window.innerHeight,
listening: true
});
var layer = new Kinetic.Layer({
listening: true
});
var layer = new Kinetic.Layer();
var player = new Kinetic.Circle({
x: 20,
y: 20,
radius: 6,
fill: 'cyan',
stroke: 'black',
draggable: true
});

layer.add(player);


// move the circle with the mouse
stage.getContent().addEventListener('mousemove', function() {
layer.removeChildren();
layer.add(player);
player.setPosition(stage.getPointerPosition());
var obj = {
x: stage.getPointerPosition().x,
y: stage.getPointerPosition().y
};

tail.push(obj);
var mảng = [];
tail.iterateItems(function (p) {
arr.push(p.x, p.y);
});
var line = new Kinetic.Line({
points: arr,
stroke: 'white',
strokeWidth: 2,
lineCap: 'round',
lineJoin: 'round'
});
layer.add(line);
layer.draw();
});
stage.add(layer);
});

这是 html:

   

<đầu>
Collision Detection









Xem sitemap của VNExpress

và CSS:

html {
màu:#000;
background:#222222;
}
Một {
con trỏ:con trỏ;
kiểu danh sách: không có;
}
html, nội dung {
chiều rộng: 100%;
chiều cao: 100%;
lề: 0px;
phần đệm: 0px;
tràn: ẩn;
}
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
lề:0;
phần đệm: 0;
}
#thùng chứa {
background:#000;
lề:tự động;
cursor:none;
nổi:trái;
}

câu trả lời hay nhất

我在做的一个项目中遇到了和你一样的问题。

我能够在 Chrome 34.0.1847.116 m 中重现您的问题,但不能在 IE11 中重现您的问题(请参阅“问题 fiddle ”)。

这似乎是 KineticJS 4.5.3 中的一个错误,因为迁移到 KineticJS 5.1.0 似乎修复了它(请参阅“修复 fiddle ”)。

Problem fiddle

Fixed fiddle

var stage = new Kinetic.Stage({
container: 'container',
width: window.innerWidth,
height: window.innerHeight
});

var layer = new Kinetic.Layer();

var player = new Kinetic.Circle({
x: 20,
y: 20,
radius: 6,
fill: 'cyan',
stroke: 'black',
draggable: true
});

layer.add(player);
stage.add(layer);

// move the circle with the mouse
stage.getContent().addEventListener('mousemove', function() {
player.setPosition(stage.getPointerPosition());
layer.draw();
});

关于javascript - Kinectisj : Issue where mouse trail remains(Layer issue),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21397577/

28 4 0
Đề xuất bài viết: selenium - 在 Katalon Studio 中计算项目、行、用户等
Đề xuất bài viết: ios - 嵌入在 UIView 中的 UITextField 不响应触摸事件
Đề xuất bài viết: java - 有没有基于 Java 的 2D 跨平台移动游戏引擎?
Đề xuất bài viết: javascript - 如何在 Postman 测试中使用 Promises?
Walker 123
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Các bài viết phổ biến trên toàn bộ trang web
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com