通过chrome扩展获取鼠标坐标
obtain mouse coordinates through chrome extension
我很想知道是否有办法通过chrome扩展获取鼠标坐标,然后使用这些坐标来检查用户是否点击了那个位置?
获取鼠标坐标非常简单,可以将其放入内容脚本中:
document.onmousemove = function(e)
{
var x = e.pageX;
var y = e.pageY;
// do what you want with x and y
};
本质上,我们为整个页面的onmousemove
事件分配一个函数,并从事件对象(e
)中获取鼠标坐标。
然而,我不完全确定你说的是什么意思
然后用这些坐标来检查这个人是否点击了那个位置?
是否要检查用户是否单击了类似按钮的内容?在这种情况下,您可以简单地向该按钮(或任何其他元素)订阅一个事件,如下所示:
document.getElementById("some_element").onclick = function(e)
{
alert("User clicked button!");
};
要记录所有鼠标点击及其位置:
document.onclick = function(e)
{
// e.target, e.srcElement and e.toElement contains the element clicked.
alert("User clicked a " + e.target.nodeName + " element.");
};
请注意,鼠标坐标在事件对象(e
)中仍然可用。
如果用户点击任意位置时需要坐标,这就可以了:
document.onclick = function(e)
{
var x = e.pageX;
var y = e.pageY;
alert("User clicked at position (" + x + "," + y + ")")
};
我厌倦了每隔几周就搜索一次答案,所以我创建了一个快速脚本。它需要jquery来进行dom选择、dom附加和样式编辑。。这很容易改变,但这周我已经工作太多了。
(function() {
'use strict';
var $toolTip = $('<div/>');
$toolTip.addClass('customTooltip-rsd')
.css({
position: 'absolute',
display: 'inline-block',
'font-size': '22px',
backgroundColor: '#000',
color: '#ffffff',
'z-index': 9999999999,
padding: '10px',
'word-spacing': '10px',
'border-radius': '50%',
width: 100,
height: 100,
'line-height': '100px',
'text-align': 'center',
'font-weight': 'bold'
})
;
$(document.body).append($toolTip);
$(window).on('mousemove', function(e) {
var posX = e.pageX;
var posY = e.pageY;
$toolTip.text(posX + ',' + posY).css({
top: posY + 'px',
left: posX + 'px'
});
});
}());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
在我的项目中,我将这个简单的jQuery脚本放在一个单独的文件中,以检查x
和y
坐标。我可以简单地使用trackingMouse
变量来切换它的开关。
// this lets you click anywhere on the page and see the x and y coordinates
let trackingMouse = true;
$(document).ready(() => {
$(document).on('click', (e) => {
if (trackingMouse) {
let x = e.pageX;
let y = e.pageY;
console.log(`The x coordinate is: ${x}`);
console.log(`The y coordinate is: ${y}`);
}
});
});
获得鼠标坐标后,您可以使用值为"_blank"的"target"属性在新选项卡中打开url。<a href="your url goes here" target="_blank">URL Display Name</a>
如果您使用的是任何javascript框架,您可以提供一个点击事件,并且在其控制器中,您可以使用默认的导航方法进行导航。
相关文章:
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- AngularJS-如何在mousemove上存储鼠标坐标
- 当鼠标停止或改变方向时获取鼠标坐标
- 将鼠标坐标保存在阵列中
- 如何以百分比计算鼠标坐标 javascript
- 画布:当存在*border*时,获取鼠标坐标
- 如何在Fabric.js上获取鼠标坐标
- Javascript/Canvas-查找相对于坐标网格位置的鼠标坐标
- 获取画布中图像内的鼠标坐标
- HTML5画布绘图应用程序中的鼠标坐标漂移
- 画布 - 在调整窗口大小时转换鼠标坐标
- 滚动弄乱了我的画布鼠标坐标 - Javascript Telerik Mobile
- 在视频元素上获取准确的鼠标坐标
- DIV - JavaScript 中的相对鼠标坐标
- 如何将 JS 鼠标坐标获取到 PHP 插入查询中
- 获取每次点击的鼠标坐标
- OpenLayers 3 在选择交互时获取鼠标坐标
- Javascript鼠标坐标没有事件
- D3:跟随鼠标坐标
- 如何在卸载之前保存鼠标坐标