Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript";onmousemove();适用于Chrome,但不适用于Firefox_Javascript_Html_Firefox_Canvas - Fatal编程技术网

Javascript";onmousemove();适用于Chrome,但不适用于Firefox

Javascript";onmousemove();适用于Chrome,但不适用于Firefox,javascript,html,firefox,canvas,Javascript,Html,Firefox,Canvas,我已经尝试过谷歌搜索,但找不到任何解决方案 底部的四个塔应该在鼠标悬停时显示不同的图像(透明度较低)。这在Google Chrome中非常有效,但在Firefox中却不行 以下是整个代码(app.js)的网站:(右键单击->查看源代码) 以下是问题代码: 在我的HTML中: <canvas id="Canvas_One" width="1160" height="580" style="border:2px solid yellow; background-color:b

我已经尝试过谷歌搜索,但找不到任何解决方案

底部的四个塔应该在鼠标悬停时显示不同的图像(透明度较低)。这在Google Chrome中非常有效,但在Firefox中却不行

以下是整个代码(app.js)的网站:(右键单击->查看源代码)

以下是问题代码:

在我的HTML中:

<canvas id="Canvas_One" width="1160" height="580" style="border:2px solid yellow;          background-color:black; padding-left:0;margin-left:0;" onmousemove="lolol(event)"    onclick="haha(event)"></canvas>
我有一种感觉,一旦上述警报出现在firefox中,其余的警报将被神奇地修复

这里有一个更详细的版本

function lolol(event) {
event = event || window.event;
ix = event.x - canvas.offsetLeft + 10;  
iy = event.y- canvas.offsetTop  + document.body.scrollTop;
//...
if(iy > 510) {
    var dist = Math.round(ix / 50) - 1;
    if(dist < towerpurchaseoptions.length){
    towerpurchaseoptions[dist].isActive = true;
    //textout(towerpurchaseoptions[dist].name);
     for(var i=0; i<towerpurchaseoptions.length; i++) {
         if(i != dist) {
    towerpurchaseoptions[i].isActive = false;
         }
     }
}  
}
//....
}
函数lolol(事件){
event=event | | window.event;
ix=event.x-canvas.offsetLeft+10;
iy=event.y-canvas.offsetTop+document.body.scrollTop;
//...
如果(iy>510){
var dist=数学四舍五入(ix/50)-1;
if(距离对于(var i=0;i我检查了您的问题,这只是因为

function lolol(event) {
     event = event || window.event; //For IE

    ix = event.x - canvas.offsetLeft + 10;
//这里是ruturningnan

    iy = event.y- canvas.offsetTop  + document.body.scrollTop;
//这里iy是ruturningnan

    iy = event.y- canvas.offsetTop  + document.body.scrollTop;
为什么会这样? 因为事件在firefox中没有propery.x,所以您可以将其更改为

 function lolol(event) {
         event = event || window.event; //For IE

        ix = event.clientX - canvas.offsetLeft + 10;


        iy = event.clientY- canvas.offsetTop  + document.body.scrollTop;
它会起作用的,谢谢