Javascript设置超时不工作,我做错了什么?

Javascript设置超时不工作,我做错了什么?,javascript,onclick,settimeout,Javascript,Onclick,Settimeout,函数showImage(图像){ document.getElementById(“image”).style.visiblity=“可见”; document.getElementById(“image”).src=images/GreenLight.jpg; } 函数startTimer(){ var con=确认(“按下按钮”); 如果(con==true){ x=setTimeout(函数(){showImage('image')},1); } 否则{ x=“您按了取消!”; } } 第


函数showImage(图像){
document.getElementById(“image”).style.visiblity=“可见”;
document.getElementById(“image”).src=images/GreenLight.jpg;
}
函数startTimer(){
var con=确认(“按下按钮”);
如果(con==true){
x=setTimeout(函数(){showImage('image')},1);
}
否则{
x=“您按了取消!”;
}
}
第1页
点击这里

我正在尝试在单击警报框上的“确定”按钮5秒后显示图像。我很困惑我到底做错了什么。

您必须在此行中形成合法的javascript字符串,才能根据需要分配
.src
属性。因此,改变这一点:

<title></title>
<link rel="stylesheet" type="text/css" href="mystyle.css">

<script type="text/javascript">

    function showImage(image) {
        document.getElementById("image").style.visibilty = "visible";
        document.getElementById("image").src = images / GreenLight.jpg;
    }


    function startTimer() {
        var con = confirm("Press a button");
        if (con == true) {
            x = setTimeout(function () { showImage('image') }, 1);
        }
        else {
            x = "You pressed Cancel!";
        }
    }




</script>
</head>
<body>
<div id="wrapper">
    <div id="header">
        <h1> Page 1</h1>
    </div>
    <div id="menu">
        <ul>
            <li> <a href="default.htm">Home</a>        </li>
            <li class="here"><a href="page1.htm">Page 1</a></li>
            <li><a href="page2.htm">Page 2</a></li>
        </ul>
    </div>
    <div id="content">
        <form id="formpage1" method="post" action="default.htm"></form>

        <button onclick="startTimer()">Click Here</button>
        <div>
            <img id="image" src=images/GreenLight.jpg style="visibility:hidden" />
        </div>
    </div>

    <div id="footer">

    </div>
</div>

</body>
 </html>
为此:

document.getElementById("image").src = images / GreenLight.jpg;
仅供参考,错误控制台可能是您在这里的朋友,因为这可能是一个javascript错误,并且会给您错误和行号


您的HTML还应使用引号:

document.getElementById("image").src = "images/GreenLight.jpg";
function showImage(image) {
        document.getElementById(image).style.visibilty = "visible";
        document.getElementById(image).src = "images/GreenLight.jpg";
    }

您必须在此行中形成合法的javascript字符串,才能根据需要分配
.src
属性。因此,改变这一点:

<title></title>
<link rel="stylesheet" type="text/css" href="mystyle.css">

<script type="text/javascript">

    function showImage(image) {
        document.getElementById("image").style.visibilty = "visible";
        document.getElementById("image").src = images / GreenLight.jpg;
    }


    function startTimer() {
        var con = confirm("Press a button");
        if (con == true) {
            x = setTimeout(function () { showImage('image') }, 1);
        }
        else {
            x = "You pressed Cancel!";
        }
    }




</script>
</head>
<body>
<div id="wrapper">
    <div id="header">
        <h1> Page 1</h1>
    </div>
    <div id="menu">
        <ul>
            <li> <a href="default.htm">Home</a>        </li>
            <li class="here"><a href="page1.htm">Page 1</a></li>
            <li><a href="page2.htm">Page 2</a></li>
        </ul>
    </div>
    <div id="content">
        <form id="formpage1" method="post" action="default.htm"></form>

        <button onclick="startTimer()">Click Here</button>
        <div>
            <img id="image" src=images/GreenLight.jpg style="visibility:hidden" />
        </div>
    </div>

    <div id="footer">

    </div>
</div>

</body>
 </html>
为此:

document.getElementById("image").src = images / GreenLight.jpg;
仅供参考,错误控制台可能是您在这里的朋友,因为这可能是一个javascript错误,并且会给您错误和行号


您的HTML还应使用引号:

document.getElementById("image").src = "images/GreenLight.jpg";
function showImage(image) {
        document.getElementById(image).style.visibilty = "visible";
        document.getElementById(image).src = "images/GreenLight.jpg";
    }

将showImage功能更改为

setTimeout(function () { showImage('image') }, 5000);
您的img HTMLtag应使用引号:

document.getElementById("image").src = "images/GreenLight.jpg";
function showImage(image) {
        document.getElementById(image).style.visibilty = "visible";
        document.getElementById(image).src = "images/GreenLight.jpg";
    }

将showImage功能更改为

setTimeout(function () { showImage('image') }, 5000);
您的img HTMLtag应使用引号:

document.getElementById("image").src = "images/GreenLight.jpg";
function showImage(image) {
        document.getElementById(image).style.visibilty = "visible";
        document.getElementById(image).src = "images/GreenLight.jpg";
    }


“不工作”是有史以来最糟糕的问题解释“我做错了什么?”
images/GreenLight.jpg
看起来不对。您可能需要
'images/GreenLight.jpg'
(一个字符串)。还有:
images/GreenLight.jpg
没有
图像
变量,
/
没有意义,
GreenLight.jpg
没有引号无效。您可能是指
“images/GreenLight.jpg”
@cookiemonster:它将访问
GreenLight
对象的
jpg
属性,该属性可能不存在;)@菲利克斯克林:那是真的。:-)“不工作”是有史以来最糟糕的问题解释“我做错了什么?”
images/GreenLight.jpg
看起来不对。您可能需要
'images/GreenLight.jpg'
(一个字符串)。还有:
images/GreenLight.jpg
没有
图像
变量,
/
没有意义,
GreenLight.jpg
没有引号无效。您可能是指
“images/GreenLight.jpg”
@cookiemonster:它将访问
GreenLight
对象的
jpg
属性,该属性可能不存在;)@菲利克斯克林:那是真的。:-)正如FelixKling在上面指出的,它实际上并不是无效代码。很奇怪,显然不是OP想要的
variable/object.property
Yes,但这是一个引用错误。只是说它是合法的JavaScript,所以不会出现解析错误。但是+1,因为这显然是OP的意图。正如FelixKling在上面指出的,它实际上不是无效代码。很奇怪,显然不是OP想要的
variable/object.property
Yes,但这是一个引用错误。只是说它是合法的JavaScript,所以不会出现解析错误。但是+1,因为这显然是OP想要的。图像路径和文件名中真的有空格吗?图像路径和文件名中真的有空格吗?