Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.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 未能执行';removeChild';在';节点';:参数1的类型不是';节点';_Javascript_Html - Fatal编程技术网

Javascript 未能执行';removeChild';在';节点';:参数1的类型不是';节点';

Javascript 未能执行';removeChild';在';节点';:参数1的类型不是';节点';,javascript,html,Javascript,Html,我正在使用Javascript制作一个小游戏,其中有两个面。左侧有5张图片,右侧有4张图片。当用户单击左侧缺少的图片时,游戏进入下一个级别。我还没有编写完整的代码。我已经编写了以下代码 <!--smile game--> <!DOCTYPE html> <html> <head> <title>Matching Game part3</title> <meta charset =

我正在使用Javascript制作一个小游戏,其中有两个面。左侧有5张图片,右侧有4张图片。当用户单击左侧缺少的图片时,游戏进入下一个级别。我还没有编写完整的代码。我已经编写了以下代码

<!--smile game-->
<!DOCTYPE html>
<html>
    <head>
        <title>Matching Game part3</title>
        <meta charset = "UTF-8">
        <style>
            img
            {
                position: absolute;
            }
            div
            {
                position: absolute;
                width: 500px;
                height: 500px; 
            }
            #rightside
            {
                left: 500px;
                border-left: 1px solid black;
            }

        </style>

    </head>
    <body id ="theBody" onload="generateFaces();">
        <h1>Matching Game</h1>
        <p>Click on the extra smiling face on the left</p>
        <div id="leftside"></div>
        <div id="rightside"></div>

        <script>
            var numberOfFaces = 5;
            var theLeftSide = document.getElementById("leftside");
            var theRightSide = document.getElementById("rightside");
            function generateFaces()
            {
                for(var i =0; i<numberOfFaces; i++)
                {
                    var image = document.createElement("img");
                    image.src = "http://home.cse.ust.hk/~rossiter/mooc/matching_game/smile.png";
                    image.style.top  = Math.floor(Math.random() * 400) + "px";
                    image.style.left  = Math.floor(Math.random() * 400) + "px";
                    document.getElementById("leftside").appendChild(image);
                }
            }

            leftsideimages = theLeftSide.cloneNode(true);
            leftsideimages.removeChild(leftsideimages.lastChild);
            theRightSide.appendChild(leftsideimages);

        </script>
    </body>
</html>

配对游戏第三部分
img
{
位置:绝对位置;
}
div
{
位置:绝对位置;
宽度:500px;
高度:500px;
}
#右侧
{
左:500px;
左边框:1px纯黑;
}
配对游戏
点击左边额外的笑脸

var numberOfFaces=5; var theLeftSide=document.getElementById(“leftside”); var theRightSide=document.getElementById(“右侧”); 函数生成器() {
对于(var i=0;i您尚未调用
generateFaces()
。因此,
左侧
在克隆时不包含子项,从而生成
左侧图像。lastChild()
null


不用担心,我们以前都有过!

您的脚本是在主体中内联的,因此它在主体创建时正在运行,并且
generateFaces()
函数所做的任何事情都肯定不会被之后的代码访问(该方法是在主体加载期间运行脚本时创建的,但直到主体加载完成后才实际调用)

我对您的代码进行了一些重新排列:

<!--smile game-->
<!DOCTYPE html>
<html>
<head>
<title>Matching Game part3</title>
<meta charset = "UTF-8">
<style>
    img
    {
        position: absolute;
    }
    div
    {
        position: absolute;
        width: 500px;
        height: 500px;
    }
    #rightside
    {
        left: 500px;
        border-left: 1px solid black;
    }
</style>
<script>
var numberOfFaces = 5;
function generateFaces()
{
    for(var i =0; i<numberOfFaces; i++)
    {
        var image = document.createElement("img");
        image.src = "http://home.cse.ust.hk/~rossiter/mooc/matching_game/smile.png";
        image.style.top  = Math.floor(Math.random() * 400) + "px";
        image.style.left  = Math.floor(Math.random() * 400) + "px";
        document.getElementById("leftside").appendChild(image);
    }
}

function init() {
    var theLeftSide = document.getElementById("leftside");
    var theRightSide = document.getElementById("rightside");
    generateFaces();
    leftsideimages = theLeftSide.cloneNode(true);
    leftsideimages.removeChild(leftsideimages.lastChild);
    theRightSide.appendChild(leftsideimages);
}
</script>
</head>
<body id ="theBody" onload="init()">
    <h1>Matching Game</h1>
    <p>Click on the extra smiling face on the left</p>
    <div id="leftside"></div>
    <div id="rightside"></div>
</body>
</html>

配对游戏第三部分
img
{
位置:绝对位置;
}
div
{
位置:绝对位置;
宽度:500px;
高度:500px;
}
#右侧
{
左:500px;
左边框:1px纯黑;
}
var numberOfFaces=5;
函数生成器()
{
对于(var i=0;i