Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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 Window.onload函数在chrome中不起作用?_Javascript_Google Chrome_Onload - Fatal编程技术网

Javascript Window.onload函数在chrome中不起作用?

Javascript Window.onload函数在chrome中不起作用?,javascript,google-chrome,onload,Javascript,Google Chrome,Onload,我们制作了一个带有函数的脚本,我正试图用window.onload调用它。脚本的目的是在页面加载时用两个图像填充画布。这适用于Firefox、Internet Explorer和Safari,但不适用于Google Chrome。我们已经在谷歌上搜索过这个问题,但还没有找到,所以我们希望你们中的任何人都能帮助我们 这是HTML和Javascript代码: <!DOCTYPE html> <html> <head> <meta charset="U

我们制作了一个带有函数的脚本,我正试图用window.onload调用它。脚本的目的是在页面加载时用两个图像填充画布。这适用于Firefox、Internet Explorer和Safari,但不适用于Google Chrome。我们已经在谷歌上搜索过这个问题,但还没有找到,所以我们希望你们中的任何人都能帮助我们

这是HTML和Javascript代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Canvas Opdracht 2</title>

    <link rel='stylesheet' type='text/css' href='css/canvasopdracht2.css'>
</head>

<body>
    <!-- <img id="logo" height='100px'><br> -->
    <canvas id='canvas2' width='1900' height='1000'>
        Your browser does not support the HTML5 canvas tag.
    </canvas>

</body>
    <script src="js/addlistener.js"></script>
    <script src="https://code.createjs.com/createjs-2015.05.21.min.js"></script> <!-- EaselJS inladen -->
    <script src="js/canvasopdracht2.js"></script>
</html>

帆布Opdracht 2
//JAVASCRIPT

window.onload = time2paint;

var stage = new createjs.Stage("canvas2");
var canvasPositionsX=[]; //array
var canvasPositionsY=[]; //array
var canvasPositions=[]; //array
var genPositionX=-50; var genPositionY=-50;
var Position = 0;
var usedPositions = []; //array
var finalPositions;
var randomPosition = [];
var singlePosition = [];

var SplitRandomUsedPosition;
var randomUsedPosition;

var attachedPositionX1;
var attachedPositionX2;
var attachedPositionY1;
var attachedPositionY2;
var attachedPositions=[];

function time2paint(event){
  var canvasWidth = 1900; var canvasHeight = 1000;
  var statistics = 10;

  //generate x positions
  for(s=1; s<=(canvasWidth/50); s++){
    genPositionX=genPositionX + 50;
    canvasPositionsX.push(genPositionX);
  }
  //generate y positions
  for(s=1; s<=(canvasHeight/50); s++){
    genPositionY=genPositionY + 50;
    canvasPositionsY.push(genPositionY);
  }
  //generate a grid (array)
  //combine generated y and x positions, and put them all in the canvasPositions array together
  //voor elke x coordinate worden alle y coordinaten toegevoegd in een 2e for loop
  for(i=0; i<canvasPositionsX.length; i++){
    for(s=0; s<canvasPositionsY.length; s++){
      Position = canvasPositionsX[i] + " " + canvasPositionsY[s];
      canvasPositions.push(Position);
    } 
  }
   //get coordinates relative to client window
  var inx = event.clientX; 
  var iny = event.clientY; 
  //get offset of the element, relative to client window
  var minx = getOffset( document.getElementById('canvas2') ).left; 
  var miny = getOffset( document.getElementById('canvas2') ).top; 

    for(i=1; i<=statistics; i++){
      //get final coordinates, relative to element window
      var x = inx - minx;
      var y = iny - miny;

      //create image (50x50 afbeelding)
      var image = new createjs.Bitmap("images/plaatje (" + i + ").jpg");
      image.scaleX=0.25; //50px
      image.scaleY=0.25; //50px

      //als image 1 .. 
      if(i == 1){
        //get center 
        image.x = canvasWidth / 2; 
        image.y = canvasHeight / 2;
        //push first image coordinates in usedpositions
        usedPositions.push(image.x + " " + image.y);
      //als andere image .. 
      }else{
        //get random usedposition
        randomUsedPosition = usedPositions[Math.floor(Math.random() * usedPositions.length)];
        SplitRandomUsedPosition = randomUsedPosition.split(" "); // split by space - [0] is x - [1] is y

        //voeg 50px x OF 50px y toe (+ bij elkaar voegen)
        attachedPositionX1 = (parseInt(SplitRandomUsedPosition[0]) + 50) + " " + parseInt(SplitRandomUsedPosition[1]);
        attachedPositionX2 = (parseInt(SplitRandomUsedPosition[0]) - 50) + " " + parseInt(SplitRandomUsedPosition[1]);
        attachedPositionY1 = parseInt(SplitRandomUsedPosition[0]) + " " + (parseInt(SplitRandomUsedPosition[1]) + 50);
        attachedPositionY2 = parseInt(SplitRandomUsedPosition[0]) + " " + (parseInt(SplitRandomUsedPosition[1]) - 50);
        attachedPositions = [attachedPositionX1, attachedPositionX2, attachedPositionY1, attachedPositionY2];
        //random choose where to attach
        randomPosition = attachedPositions[Math.floor((Math.random() * attachedPositions.length))];

        //if random position al wordt gebruikt get nieuwe random coordinates from canvaspositions array
        while(usedPositions.indexOf(randomPosition) > -1){
        randomUsedPosition = usedPositions[Math.floor(Math.random() * usedPositions.length)];
        SplitRandomUsedPosition = randomUsedPosition.split(" "); // split by space - [0] is x - [1] is y

        //voeg 50px x OF 50px y toe (+ bij elkaar voegen)
        attachedPositionX1 = (parseInt(SplitRandomUsedPosition[0]) + 50) + " " + parseInt(SplitRandomUsedPosition[1]);
        attachedPositionX2 = (parseInt(SplitRandomUsedPosition[0]) - 50) + " " + parseInt(SplitRandomUsedPosition[1]);
        attachedPositionY1 = parseInt(SplitRandomUsedPosition[0]) + " " + (parseInt(SplitRandomUsedPosition[1]) + 50);
        attachedPositionY2 = parseInt(SplitRandomUsedPosition[0]) + " " + (parseInt(SplitRandomUsedPosition[1]) - 50);
        attachedPositions = [attachedPositionX1, attachedPositionX2, attachedPositionY1, attachedPositionY2];
        //random choose where to attach
        randomPosition = attachedPositions[Math.floor((Math.random() * attachedPositions.length))];
         }

        //push chosen position in usedPositions array and save final image positions
        usedPositions.push(randomPosition);
        finalPositions = randomPosition.split(" "); 

        //draw image
        image.x = finalPositions[0]; 
        image.y = finalPositions[1]; 
      }

   //add fade-in jquery effects

        stage.addChild(image);
        stage.update(); //update draws to the canvas
    }  

        console.log(usedPositions);  
}

function getOffset( el ) {
    var _x = 0;
    var _y = 0;
    while( el && !isNaN( el.offsetLeft ) && !isNaN( el.offsetTop ) ) {
        _x += el.offsetLeft - el.scrollLeft;
        _y += el.offsetTop - el.scrollTop;
        el = el.offsetParent;
    }
    return { top: _y, left: _x };
}
window.onload=time2paint;
var stage=newcreatejs.stage(“canvas2”);
var CanvasX=[]//大堆
var Canvassy=[]//大堆
var canvasPositions=[]//大堆
变量genPositionX=-50;变量genPositionY=-50;
var位置=0;
var usedPositions=[]//大堆
var最终位置;
var randomPosition=[];
var singlePosition=[];
var SplitrandousedPosition;
var随机使用位置;
var attachedPositionX1;
var attachedPositionX2;
var附加位置1;
var AttachedPosition2;
var attachedPositions=[];
功能time2paint(事件){
var canvasWidth=1900;var canvasHeight=1000;
var统计=10;
//生成x个位置

对于(s=1;将脚本标记放在主体或头部内。并使用事件侦听器,这是公认的标准方式:
window.addEventListener('load',time2paint,false)
。感谢您回复@somethinghere-我们刚刚添加了事件侦听器,并尝试按照Alex K的建议将脚本标记放入正文中。但是,这并不能修复在chrome中加载画布图像的问题。不,不幸的是@somethinghere无法正常工作。您的控制台怎么说?它一定报告了一个错误。