html代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>kc_homework_9</title> <link rel="stylesheet" type="text/css" href="kc_homework_9.css"> </head> <body> <div id="content"> <p> JavaScript脚本语言具有以下特点:</p> <p>(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。</p> <p>(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。</p> <p>(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。</p> <p>(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。 </p> <p>(5)跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提是机器上的浏览器支 持JavaScript脚本语言,JavaScript已被大多数的浏览器所支持。不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题,安全性。 </p> <p>而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。同时,有些特殊功能(如AJAX)必须依赖JavaScript在客户端进行支持。</p> </div> <form> <input type="text" id="paste" placeholder="要添加在内容粘贴在这里"> <br> <input type="text" id="paragraph" placeholder="请在这里写明添加在第几段后"> <input type="submit" value="添加" id="btn_add"> <br> <input type="submit" value="统计字符数" id="btn_sum"> <span id="count"></span> </form> <script src="kc_homework_9.js"></script> </body> </html>
css代码
p { font-size: 20px; text-indent: 40px; /* 首行缩进2字符,根据字符大小变化 */ } span { color: blue; font-weight: bold; /* 采用相对定位 */ position: relative; left: 120px; }
JavaScript代码
var p = document.getElementById("content").getElementsByTagName("p"); var Btn_add = document.getElementById('btn_add'); var Btn_sum = document.getElementById('btn_sum'); // 当添加按钮点击,进入 Btn_add.onclick = function () { add_content(); return false;//防止运行后页面刷新,就是闪一下 } // 当统计字数按钮被点击 Btn_sum.onclick = function () { count_num(); return false;//防止运行后页面刷新,就是闪一下 } function add_content() { // 输入框的内容 var paste_content = document.getElementById('paste').value; var paragraph = document.getElementById('paragraph').value; // 1-创建好带文本的<p> 元素(因为后面需要用p标签统计字数,否则不用) var para = document.createElement("p");// 创建 <p> 元素 var node = document.createTextNode(paste_content);// 为 <p> 元素创建一个新的文本节点 para.appendChild(node);// 将文本节点添加到 <p> 元素中 // 2-添加内容到想要添加的段落后 var element = document.getElementById("content");// 查找已存在的元素 element.insertBefore(para, p[paragraph]);// 添加节点到(paragraph + 1)之前 } function count_num() { var temp = 0; var p_sum = 0; var p_len = p.length; for (var i=0; i<p_len; i++) { temp = p[i].innerHTML.length;//迭代获取每段的字数 p_sum += temp; } document.getElementById("count").innerHTML ="总共有" + p_sum + "字符"; }