js 节点 document html css 表单节点操做javascript
节点操做:访问、属性、建立 (1)节点的访问:firstChild、lastChild、childNodes、parentChild(父子节) 可使用元素对象的方法进行代替:getElementById()、getElementsByTagName() (2)节点属性的操做:setAttribute()、removeAttribute()、getAttribute() (3)节点的建立、删除、追加: 建立节点:document.createElement(tagName) 删除节点(必须父节点下的子节点才能被删除):parentObj.removeChild(nodeObj) 追加节点:parentObj.appendChild(nodeObj); CSS DOM 核心:就是给一个元素对象,增长样式(外观)。 概述:每个HTML标记都有一个style属性,它对应元素元素的style属性,该style属性是一个对象。 Style对象有哪些属性:style对象的属性,与CSS中的属性一一对应。 obj.style.border = “1px solid #FF0000” obj.style.width = “400px”; //CSS必定要加单位 obj.style.position = “absolute”; <img id=“img” />是一个HTML标记,它的属性有:src、 width、height、alt、border、style、title等 每个标记都对应一个元素对象,元素对象的属性与标记的属性如出一辙。 var obj = document.getElementById(“img”); obj.src = “images/bg.gif”; obj.width = 400; obj.border = 1; obj.style = “padding:20px;” CSS属性与style对象的属性的转换问题 (1)若是是一个单词的属性,CSS与style属性如出一辙;如:obj.style.width = “400px” (2)若是是多个单词的属性,转成style对象属性时,转换规则是:第一个单词全小写,后面的单词首字母大写,而且去掉中间的链接线(-) 举例: background-color 转换后 obj.style.backgroundColor = “#FF0000” font-size 转换后 obj.style.fontSize = “18px” //获取id=box的对象 var obj = document.getElementById("box"); //给id=box的对象增长样式 obj.style.width = "400px"; obj.style.height = "300px"; obj.style.border = "2px dotted #ccc"; obj.style.backgroundColor = "#f0f0f0"; obj.style.margin = "50px auto"; obj.style.fontSize = "24px"; obj.style.color = "#FF0000"; HTML DOM 1、HTML DOM的特性 (1)每个HTML标记,都对应一个元素对象。每一个标记,都是一个对象,是一个节点。例如:<img>对应一个img对象,一个<table>标记,对应一个table对象,一个<form>标记,对就form对象等。 (2)HTML标记的属性,与元素对象的属性如出一辙。 <img>标记属性:src、width、border、height等 imgObj.src = “images/bg.gfi”; imgObj.width = 400; imgObj.height = 300; imgObj.border = 2; 2、访问HTML元素的方法总结 一、经过document对象的getElementById()方法来访问,返回一个对象 <div id=”box”></div> var obj = document.getElementById(“box”); //获取对象 var img = document.createElement(“img”); // 建立节点 img.src = “images/img01.jpg”; //使用元素对象的属性 img.border = 2; img.style.padding = “10px”; //使用style对象来增长样式 img.style.float = “left”; obj.appendChild(img); //将img节点,追加到id=box中去 二、经过父元素的getElementsByTagName()方法来访问,返回一个数组对象 语法结构:var arrObj = document.getElementsByTagName(“li”) 功能描述:取得标记为<li>的一个数组(标记列表)。 举例:取得一个<ul>标记中的全部的<li>标记 //获取id=ul的对象 var ulObj = document.getElementById("ul"); //取得全部的li对象的一个数组 var arrLi = ulObj.getElementsByTagName("li"); //修改第二个和第四个li的样式 arrLi[1].style = "font-size:24px;color:#ff0000;"; arrLi[3].style.textDecoration = "underline"; 三、经过name属性来访问(通常用于表单元素) onsubmit事件:当单击“提交按钮”时,发生的事件。事件的返回值,直接决定默认动做的执行。 onsubmit的返回值,若是为true或空,则表单提交;若是为false,则阻止表单提交。 <form name="form1" action="login.php" method="post" onsubmit="return checkForm()"> 用户名:<input type="text" name="username" /> 密码:<input type="password" name="password" /> <input type="submit" value="提交表单" /> </form> <script type="text/javascript"> function checkForm() { //取到表单中各元素 if(document.form1.username.value == "") { window.alert("用户名不能为空"); return false; }else if(document.form1.password.value.length == 0) { window.alert("密码不能为空"); return false; }else { return true; } }