我正在创建iFrame,在iFrame脚本中我需要在创建后捕获鼠标坐标(一开始)。我希望通过自定义事件可以实现。
我试过
var myEvent = new Event('mouseC');
document.addEventListener('mouseC', function(e){
console.log('my event is working');
console.log('mouse x is '+e.pageX);
console.log('mouse y is '+e.pageY);
});
document.dispatchEvent(myEvent);
控制台显示“我的事件正在运行”,但鼠标坐标未定义
我尝试将其包裹在window.onload
中,我也尝试了screenX
和clientX
...总是未定义的
如何在创建后imedrame中捕获新创建的iFrame中的鼠标坐标?
... btw,mousemove
事件正在工作,当鼠标移动到新的iFrame上时写入坐标。
我可以以某种方式移动鼠标仅1px来触发该事件吗?
答案 0 :(得分:0)
iframElement = document.getElementBy...("...");
document.addEventListener("click", function(evt,iframElement){
var x = evt.pageX - iframElement.offset.left;
var y = evt.pageY - iframElement.offset.top;
console.log(x+" , "+y);
});
它可能有效
答案 1 :(得分:0)
var value =parent.frames[FRAME_NAME].frameElement.offsetParent;
var x = 0, y = 0;
while (value)
{
x += value .offsetLeft;
y += value .offsetTop;
value = value .offsetParent;
//console x anf y...
}
控制台x和y你可以在iframe中获得鼠标的坐标。