Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.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重写HTML_Javascript_Html - Fatal编程技术网

JavaScript重写HTML

JavaScript重写HTML,javascript,html,Javascript,Html,因此,我在解决问题方面取得了一些进展,但遇到了一些意想不到/令人困惑的问题。我已经能够将我的脚本添加到我的网页中,但是,这两个脚本不能一起工作。如果没有脚本,页面将按我所希望的方式显示。使用脚本,脚本将运行并覆盖网页。屏幕左上角会显示一张随机图片,但html文件中没有显示任何内容。我已经包括了我所有的代码(html、javascript、css),如果有人能提供一些指导,我将不胜感激 <!DOCTYPE html> <html lang="en"> <head&g

因此,我在解决问题方面取得了一些进展,但遇到了一些意想不到/令人困惑的问题。我已经能够将我的脚本添加到我的网页中,但是,这两个脚本不能一起工作。如果没有脚本,页面将按我所希望的方式显示。使用脚本,脚本将运行并覆盖网页。屏幕左上角会显示一张随机图片,但html文件中没有显示任何内容。我已经包括了我所有的代码(html、javascript、css),如果有人能提供一些指导,我将不胜感激

<!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="UTF-8" />
    <link href="mplstyles.css" rel="stylesheet" type="text/css" />

    <title>Monroe Public Library</title>

</head>

<body>
    <div id="pageContent">
        <div id="head">
            <img src="mpl.jpg" alt="Monroe Public Library" />
      </div>

        <div id="links">
            <ul class = "nav">
            <span>Quick Links</span>
            <li><a href="#">Home Page</a></li>
            <li><a href="#">Online Catalog</a></li>
            <li><a href="#">Friends of MPL</a></li>
            <li><a href="#">New Books and Other Good Reading</a></li>
            <li><a href="#">Ohio Virtual Library</a></li>
            <li><a href="#">Internet Public Library</a></li>
            <li><a href="#">Services and Collection</a></li>
            <li><a href="#">Adult Programs</a></li>
            <li><a href="#">Teen Central</a></li>
            <li><a href="#">Children's Room</a></li>
            <li><a href="#">Computers at MPL</a></li>
            <li><a href="#">Computer Rules and Procedures</a></li>
            <li><a href="#">Staff Directory</a></li>
            <li><a href="#">Library Records</a></li>
            </ul>
        </div>

        <div id="main">
        <h2>Library Records</h2>
            <p>To view the library records, enter your username and password.</p>

            <form id="login" method="post" action="">
                <p>
                    <label for="username" class="center" id="input"> Username:</label>
                    <input type="text" id="username" name="username" size="20" />
                </p>
                <p>
                    <label for="password" class="center" id="input"> Password:</label>
                    <input type="password" id="password" name="password" size="20" />
                </p>
                <p>
                    <label for="captcha" id="input">As a final security check, enter the 5 numbers you see displayed below.</label>
                    <input type="text" id="captcha" name="captcha" size="6" />
              </p>
              <p id="login">&nbsp;</p>
              <p id="login">
              </p>
              <script src="mpl.js"></script>

          <p align="center"><img src="" alt="" name="number1" width="70" height="100" id="number1"><img src="" alt="" name="number2" width="70" height="100" id="number2"><img src="" alt="" name="number3" width="70" height="100" id="number3"><img src="" alt="" name="number4" width="70" height="100" id="number4"><img src="" alt="" name="number5" width="70" height="100" id="number5"></p>
                <div id="images">
  </div>
                <p align="center">
                    <input type="submit" value="View Library Records" />
                </p>
            </form>
        </div>

        <div id="address">
            <span class="addressBold">Monroe Public Library</span>
            580 Main Street, Monroe, OH &nbsp;&nbsp;45050
            <span class="addressBold">Phone</span>(513) 555-0211
            <span class="addressBold">Fax</span>(513) 555-0241
        </div>
    </div>
</body>
</html>

window.onload = function ()
{
        //http://www.java-scripts.net/javascripts/Random-Image-Script.phtml
        var pictureNumbers=new Array()
        //specify random images below. You can have as many as you wish
        pictureNumbers[1]="0.jpg"
        pictureNumbers[2]="1.jpg"
        pictureNumbers[3]="2.jpg"
        pictureNumbers[4]="3.jpg"
        pictureNumbers[5]="4.jpg"
        pictureNumbers[6]="5.jpg"
        pictureNumbers[7]="6.jpg"
        pictureNumbers[8]="7.jpg"
        pictureNumbers[9]="8.jpg"
        pictureNumbers[10]="9.jpg"

        var randomNumber = Math.floor(Math.random()*pictureNumbers.length)

        if (randomNumber==0)
        {
            randomNumber=1
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==1)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==2)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==3)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==4)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==5)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==6)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==7)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==8)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==9)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
        else if (randomNumber==10)
        {
            document.write('<img src="'+pictureNumbers[randomNumber]+'" border=0>')
        }
    }


@charset "UTF-8";
/* CSS Document */
body
{
    margin-top:0;
    font-family:Georgia, "Times New Roman", Times, serif;
    background-color:#FFC;
}

#head
{
    background-color:orange;
}

#page
{
    width: auto;
    margin" 0 auto;
    background-color: white;
    border-top: none;
}

#links
{
    position:absolute;
    width:10em;
    border: 1px solid blue;
    top: 72px;
    background-color: white;
}

#main
{
    margin-left: 12em;
}

#login
{
    padding-top: 1em;
    padding-left: 2em;
    padding-bottom: 5em;
    border: 1px solid blue;
}

#address
{
    padding-top: 2em;
    padding-left: 2em;
    border-top: 1px solid blue;
}

#pageContent #main h2 {
    color: #00F;
}

#input
{
    background-color: orange;
    padding-right: 20%;
}

门罗公共图书馆
    快速链接
图书馆记录 要查看库记录,请输入用户名和密码

用户名:

密码:

作为最后的安全检查,输入下面显示的5个数字。

门罗公共图书馆 俄亥俄州门罗市大街580号,邮编45050 电话(513)555-0211 传真(513)555-0241 window.onload=函数() { //http://www.java-scripts.net/javascripts/Random-Image-Script.phtml var pictureNumbers=新数组() //指定下面的随机图像。您可以拥有任意数量的图像 pictureNumbers[1]=“0.jpg” pictureNumbers[2]=“1.jpg” pictureNumbers[3]=“2.jpg” pictureNumbers[4]=“3.jpg” pictureNumbers[5]=“4.jpg” pictureNumbers[6]=“5.jpg” pictureNumbers[7]=“6.jpg” pictureNumbers[8]=“7.jpg” pictureNumbers[9]=“8.jpg” pictureNumbers[10]=“9.jpg” var randomNumber=Math.floor(Math.random()*pictureNumbers.length) 如果(随机数==0) { 随机数=1 文件。写入(“”) } else if(randomNumber==1) { 文件。写入(“”) } else if(randomNumber==2) { 文件。写入(“”) } 否则如果(随机数==3) { 文件。写入(“”) } 否则如果(随机数==4) { 文件。写入(“”) } 否则如果(随机数==5) { 文件。写入(“”) } 否则如果(随机数==6) { 文件。写入(“”) } 否则如果(随机数==7) { 文件。写入(“”) } 否则如果(随机数==8) { 文件。写入(“”) } 否则如果(随机数==9) { 文件。写入(“”) } 否则如果(随机数==10) { 文件。写入(“”) } } @字符集“UTF-8”; /*CSS文档*/ 身体 { 边际上限:0; 字体系列:佐治亚州,“泰晤士报新罗马”,泰晤士报,衬线; 背景色:#FFC; } #头 { 背景颜色:橙色; } #页面 { 宽度:自动; 保证金“0自动; 背景色:白色; 边界顶部:无; } #链接 { 位置:绝对位置; 宽度:10em; 边框:1px纯蓝色; 顶部:72px; 背景色:白色; } #主要 { 左侧边缘:12 em; } #登录 { 垫面:1米; 左:2米; 垫底:5em; 边框:1px纯蓝色; } #地址 { 垫面:2米; 左:2米; 边框顶部:1px纯蓝色; } #页面内容#主h2{ 颜色:#00F; } #输入 { 背景颜色:橙色; 右:20%; }
您的问题是document.write。您应该创建元素并将其附加到DOM中的父元素,或者更改现有元素的src属性

创建元素并附加它们 例子 下面是一个您正在做的简化示例

小提琴:

HTML

JS
var pictureNumbers=[],
pictureCount=10

对于(var i=1;i来说,要扩展@Gary对原始帖子的评论:

document.write(…)
的调用是导致您出现问题的原因。触发“onload”事件后,浏览器将关闭文档进行写入。随后对
document.write的任何调用都将覆盖整个页面

要解决此问题,您需要执行以下两项操作之一:

  • 调用
    文档。在窗口外写入
    。onload事件

  • 按照他的回答中提到的@MBottens做,在DIV标记中添加新的
    元素


  • 为什么你有很多条件分支,它们都做同样的事情?我猜你只是把所有的代码都粘贴在那里,而你的代码实际上并不是这样。不要使用文档。写。问题是什么,你能详细说明一下吗?你说的“HTML文件中没有任何内容出现”是什么意思"?如果您在浏览器的调试器中单步执行代码,在什么情况下它的行为会与您预期的不同?非常抱歉,但我并不真正理解您的代码。我知道您向我提供了一些应该很明显的内容,但我对这一点不熟悉,我根本不理解。您能否解释一下这些内容代码???如果你有
    d
    
    var parent = document.getElementById("parent"),
        img = document.createElement("img")
    
    img.setAttribute("src","your-file-name.jpg")
    parent.appendChild(img)
    
    <div id="picture-frame"></div>
    
    var pictureNumbers = [],
        pictureCount = 10
    
    for ( var i = 1; i <= pictureCount; i++ )
        pictureNumbers[i] = i + ".jpg"
    
    var randomNumber = Math.ceil(Math.random()*(pictureNumbers.length - 1)),
        element = document.getElementById("picture-frame"),
        image = document.createElement("img")
    
    image.setAttribute("src", pictureNumbers[randomNumber])
    element.appendChild(image)