tôi đang làm việc trên một kịch bản cho phép người dùng để vẽ với chuột: http://jsfiddle.net/ujMGu/Làm cách nào để ngăn chuyển động chuột nhanh chóng phá vỡ một dòng trong ứng dụng vẽ của tôi?
Vấn đề: Nếu bạn di chuyển con chuột thật nhanh nó giật và bỏ qua một vài nơi. Có cách nào để nắm bắt tất cả các điểm mà không có bất kỳ bỏ qua không gian màu đen ở giữa đường vẽ?
CSS
#myid{background: none repeat scroll 0 0 #000000;
color: #FFFFFF;
display: block;
height: 1000px;
margin: 3%;
position: relative;
text-indent: -1100px;}
JS/JQ
$('#myid')
.css('position','relative')
.unbind().die()
.bind('mousemove mouseover',function (e){
var top = parseInt(e.pageY)-$(this).offset().top;
var left= parseInt(e.pageX)-$(this).offset().left;
var pixel= $('<div></div>')
.css({
width:10,height:10,
background: '#fff',
position:'absolute',
top: top, left: left,
'border-radius': 2
});
$(this).append(pixel);
});
HTML
<div id="myid"></div>
Có thể là một ý tưởng tồi khi làm điều này với các div; hãy cân nhắc sử dụng canvas. Hầu hết các trình duyệt sẽ nhanh hơn với canvas so với div, vì divs yêu cầu thao tác DOM thay vì chỉ vẽ raster. –
vẽ theo cách này (sử dụng divs làm pixel) là khá hạn chế. Yêu cầu của bạn là gì và bạn cần hỗ trợ trình duyệt nào? Có một lý do bạn cần phải sử dụng phương pháp này hơn là (nói) canvas? –
coz im không phải rất quen thuộc với canvas, và tôi cần một cái gì đó đơn giản để tôi có thể gửi cho người khác một cách phức tạp, như một lớp phủ/mặt nạ trên đầu trang của một cái gì đó khác đằng sau nó. – Val