javascript - 如何生成onclick文字?

标签 javascript html

我正在尝试创建一个包含标题的 html 页面,当我们单击标题时,它会在其下方生成单词。但我拥有的代码仅适用于第一次点击,并且它还删除了标题。所以我的问题是,如何让它在标题下生成单词而不删除它?

<!DOCTYPE html>
<html>
<head>
    <title>function JavaScript</title>
    <script>
    var k = 0;
    function bla(){
        var ph = ["red ","blue","black","green","yellow"];
        if(k <= ph.length ){
            document.write(ph[k]);
            k++;
        }
    }
    </script>
</head>
<body>
  <h1 onclick="bla();">Click here</h1>
</body>
</html>

最佳答案

页面加载完成后运行的任何 document.write 语句都将创建一个新页面并覆盖当前页面的所有内容。这几乎肯定不是您想要发生的情况。因此,您应该避免在这种情况下使用 document.write

所以尝试添加一个元素,然后像这样写入它们

<h1 onclick="bla();">Click here</h1>
<span id="test"></span>

JS:

 if(k <= ph.length ){
        //document.write(ph[k]);
         document.getElementById("test").innerText+=" "+ ph[k];;
        k++;
      }

JS Fiddle Example

关于javascript - 如何生成onclick文字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15867555/

相关文章:

jquery - 如何确保您的 CSS 规则不被覆盖

css - 宽度和高度不适用于 DIV 标记

单行文本的 HTML 标记 <i> vs <p> vs <div>

javascript - 如何根据元素的文本内容切换 AngularJS 中的可见性?

javascript - 跨浏览器获取keyCode

Javascript:用逗号分割字符串但忽略引号中的逗号

javascript - 获取脚本标签内的内容

javascript - 输入类型 ="file"上的点击事件触发不起作用

html - 禁用浏览器输入场效应?

javascript - 根据 php 中的条件更新 select 中的选定选项