这仅适用于我网站上包含Google +1信箱的网页:

它似乎是在每次移动鼠标时触发事件.有谁知道它在做什么?我在Google上搜索过(也许我应该在这个上尝试过Bing一次!)但似乎没有人写过这篇文章.它是否记录了我的访客浏览习惯的信息?是否有某种类型的CAPTCHA来检测像人类一样的人类?
示例URL,在chrome中按F12,转到时间轴并按下记录,然后在此页面上移动鼠标(加上这个问题,请不要担心):
对于它的价值(我可以看到这将是一个流行的问题),我不认为它背后有任何险恶的东西,它甚至可能是一个无用的神器/错误,但如果它正在进行某种跟踪,好吧,这似乎有点欺骗我.
Google +1隐私政策
http://www.google.com/intl/en/privacy/plusone/
Google +1按钮隐私权政策
2011年6月28日
Google隐私权政策介绍了在您使用Google的产品和服务时我们如何处理个人信息,包括您在使用Google +1按钮时提供的信息.此外,以下内容介绍了我们针对您使用+1按钮的其他隐私惯例.
我们收集的信息以及如何共享
Google +1按钮是您与全世界公开分享信息的一种方式.Google +1按钮可帮助您和其他人从Google及其合作伙伴处获得个性化内容.Google会记录您为+1记录的事实,以及您点击+1按钮时所查看的页面的相关信息.您的+ 1可能会在其他人看来是在Google服务中使用您的个人资料名称和照片(例如搜索结果或Google个人资料)或互联网上的网站和广告上的其他地方.
我们会记录您的+1活动信息,以便为您和其他用户提供更好的Google服务体验.
要使用Google +1按钮,您需要向全世界展示公开的Google个人资料,其中至少包含您为个人资料选择的名称.该名称将在Google服务中使用,在某些情况下,它可能会替换您在Google帐户下共享内容时使用的其他名称.我们可能会向拥有您的电子邮件地址或其他识别信息的人显示您的Google个人资料身份.
使用收集的信息
除上述用途外,您提供给我们的信息均受我们Google隐私政策的约束.
我们可能会与公众,我们的用户和合作伙伴(如发布商,广告客户或关联网站)共享与用户+1活动相关的汇总统计信息.例如,我们可能会告诉发布商"在本页面上为此页面添加1%的人中有10%位于华盛顿州塔科马市."
你的选择
您可以在个人资料的+1标签上查看自己拥有的项目列表+ 1.您可以从该列表中删除单个项目.
您可以选择不从您认识的人那里看到第三方网站上的+1推荐(包括第三方网站上的广告).
我们将在您的浏览器中本地存储数据(例如您最近的+1).您可以在浏览器设置中访问和清除此信息.
更多信息
Google遵守美国安全港隐私权原则.有关安全港框架或我们的注册的更多信息,请访问美国商务部的网站.
javascript privacy data-protection mousemove google-plus-one
这是我更新和修改过的脚本,它完全可以工作,除了我想要普及它...观察****我怎么能这样做,这样我function(e){BOX.Draggable.elemen = e.target || e.srcElement; elementDraggable(e);每次都不需要使用可拖动功能对于不同的元素?
window.onload = addListeners;
var BOX = function(){
return{
Draggable: function(){}
};
}();
function addListeners(){
document.getElementById('div').addEventListener('contextmenu', menumove, false);
**document.getElementById('div').addEventListener('mousedown', function(e){BOX.Draggable.elemen = e.target || e.srcElement; elementDraggable(e);}, false);**
}
function elementDraggable(e){
var e = e || window.event;
var div = BOX.Draggable.elemen;
BOX.Draggable.innerX = e.clientX + window.pageXOffset - div.offsetLeft;
BOX.Draggable.innerY = e.clientY + window.pageYOffset - div.offsetTop;
window.addEventListener('mousemove', elementMove, false);
window.addEventListener('mouseup', function(){
window.removeEventListener('mousemove', elementMove, false);
}, true);
function elementMove(e){
div.style.position = 'absolute';
div.style.left = e.clientX + window.pageXOffset …Run Code Online (Sandbox Code Playgroud) 我建立了一个网络手机游戏,它运行在浏览器(PC/Mobile)上.
我是否需要使用touchmove?
如何像mousemove事件一样运行touchmove事件?
我目前有一个div与其中的其他元素结构.
类似于下面的东西;
<div id="container" style="position: relative; width: 500px; height: 500px;">
<div style="position: absolute; left: 50px; top: 50px;"></div>
<div style="position: absolute; left: 100px; top: 100px;"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
我试图获取相对于div的div的鼠标位置container.
到目前为止,我有这个;
function onMousemove(event) {
x = event.offsetX;
y = event.offsetY;
};
var elem = document.getElementById("container");
elem.addEventListener("mousemove", onMousemove, false);
Run Code Online (Sandbox Code Playgroud)
如果带有id的div container没有子节点,这可以正常工作.当containerdiv有子节点时,它会获得相对于孩子而不是父节点的鼠标坐标.
我的意思是,如果鼠标位于x: 51, y: 51相对于父div 的位置,它实际上将x: 1, y: 1使用上面给出的html相对于子div 返回.
我怎样才能实现我想要的,请不要图书馆.
编辑
tymeJV善意地说明了上面发生的事情.
使用C#.
我试图移动一个Form没有它的标题栏.
我发现了一篇关于它的文章:http://www.codeproject.com/KB/cs/csharpmovewindow.aspx
只要我没有设置FormBorderStyle,它就可以工作None.
有没有办法使它适用于此属性设置为None?
是否可以将鼠标移动到屏幕上的任意坐标/相对于量角器测试中的元素?我看到人们推荐使用Robot for Java用户,但当然我不能在JavaScript中使用它.
我生成一个功能,它需要设置简单快速的签名.我正在画布领域写签名.我使用jQuery,但mousemove坐标的刷新率不够快.会发生的是,如果你快速写下签名,你会看到写入像素之间有一些空格.
如何更快地设置mousemove的刷新速度?
$("#xx").mousemove(function(e){
ctx.fillRect(e.pageX - size, e.pageY - size, size, size);
$("#pagex").html(e.pageX - size);
$("#pagey").html(e.pageY - size);
}
Run Code Online (Sandbox Code Playgroud) 我为这个网站写了一个小小的绘图脚本(画布):http://scri.ch/
单击文档时,每个mousemove事件基本上执行以下操作:
- 获取坐标.
- context.lineTo()在这一点和前一点之间
- context.stroke()线
如您所见,如果您非常快速地移动光标,则事件不会触发(取决于您的CPU /浏览器/等),并且会跟踪直线.
在伪代码中:
window.addEventListener('mousemove', function(e){
myContext.lineTo(e.pageX, e.pageY);
myContext.stroke();
}, false);
Run Code Online (Sandbox Code Playgroud)
这是一个已知的问题,解决方案很好,但我想优化它.
因此,stroke()每次触发mousemove事件时,我都会将新坐标放入数组队列中,并使用计时器定期绘制/清空它.
在伪代码中:
var coordsQueue = [];
window.addEventListener('mousemove', function(e){
coordsQueue.push([e.pageX, e.pageY]);
}, false);
function drawLoop(){
window.setTimeout(function(){
var coords;
while (coords = coordsQueue.shift()) {
myContext.lineTo(coords[0], coords[1]);
}
myContext.stroke();
drawLoop();
}, 1000); // For testing purposes
}
Run Code Online (Sandbox Code Playgroud)
但它没有改善这条线.所以我试着只说明一点mousemove.相同的结果:点之间的空间太大.
它让我意识到第一个代码块足够高效,它只是mousemove触发太慢的事件.
因此,在我花了一些时间实现无用的优化之后,轮到你了:有没有办法优化mousemoveDOM脚本中的触发速度?
是否可以随时"请求"鼠标位置?
谢谢你的建议!
我最近在使用breadcrumbs目录功能,需要根据breadcrumbs容器元素中的光标x位置旋转元素.长话短说,我需要在'#pointer-box'下面的箭头指向光标,当它在'#target-box'中时.
我正在寻找两个单独的公式,a.)当'#target-box'光标x位置为0时设置箭头的最左侧位置,b.)保持箭头的最左侧和右侧 - 在任何浏览器宽度或窗口大小调整时,最近的旋转属性成比例.
任何帮助是极大的赞赏.
这是现场演示.http://jsfiddle.net/HeFqh/
谢谢
更新
在Tats_innit的帮助下,我能够在"#target-box"内部获得指向光标的箭头.现在我有两个具体问题需要解决.
a.)调整窗口大小时,箭头和光标不再对齐.
b.)'mousemove'上的'var y'不扣除顶部偏移量
var y = e.pageY - this.offsetTop
Run Code Online (Sandbox Code Playgroud)
更新的现场演示.http://jsfiddle.net/HeFqh/11/
谢谢
问题:不使用any,我的onMouseMove函数的正确类型是什么?
export class Main {
private dTimer: number;
constructor() {
this.init();
}
private init() {
this.mouseHandlers();
}
private mouseHandlers() {
document.addEventListener('mousemove', this.onMouseMove)
}
private onMouseMove: EventListener = (event: MouseEvent) => {
clearTimeout(this.dTimer);
this.dTimer = setTimeout(() => {
console.log(event.pageX, event.pageY)
}, 500);
}
}
Run Code Online (Sandbox Code Playgroud)
Typescript 抱怨我的类型,我不知道如何在不使用任何类型的情况下让它开心。
main.ts(38,3): error TS2322: Type '(event: MouseEvent) => void' is not assignable to type 'EventListener'.
Types of parameters 'event' and 'evt' are incompatible.
Type 'Event' is not assignable to type 'MouseEvent'. …Run Code Online (Sandbox Code Playgroud)