在Javascript中不起作用的函数中调用函数

Calling a function inside a function not working in Javascript

本文关键字:函数 调用 不起作用 Javascript      更新时间:2023-09-26

我第一次尝试创建一个图像动画(它可能很糟糕,但这不是这个问题的重点)。我需要从buttonPressed内部调用函数displayPicture。我能够显示图片,如果我把命令全部在buttonPressed函数。现在我想调用另一个函数,它什么都不做。包括警报(我放在那里是为了调试)。

HTML

<table id="table">
    <tr><td><img src="images/jar.png" /><tr/></td>
    <tr><td><button onclick="buttonPressed()" id="button" name="plus1" type="button">
        <h2>JAAAAAAR</h2></button></td></tr>
    <script src="java_script.js"></script>
</table>
JavaScript

var width=700;
var height=1050;
var img = document.createElement("img");
var table = document.getElementById('table');
function buttonPressed(){
    img.src = "images/clair_jar.jpg";
    while(width > 480 && height > 720){
        width = width-22;
        height = height-33;
        displayPicture(src, width, height);
        setInterval(displayPicture(src, width, height), 100);
    }
}
function displayPicture(src, newWidth, newHeight){
    alert("blah");
    table.innerHTML = "";
    img.width = newWidth;
    img.height = newHeight;
    document.body.appendChild(img);
}

displayPicture()src在任何地方都没有定义,我认为您应该将img.src传递给

之类的内容应该

displayPicture(img.src, width, height);

代替

displayPicture(src, width, height);

您的函数调用正在传递src,但看起来您的意思是传递img.src。您应该会在src上看到一个未定义的错误。