JavaScript回顾(5)

来源:互联网 发布:轻松筹软件下载 编辑:程序博客网 时间:2024/06/05 14:18

一、查找

第一种方式:依据id查找

var obj = document.getElementById(id);   //document是HTMLDocument的实例

  1. <html>  
  2.     <head>  
  3.         <script>  
  4.             function f1(){  
  5.                 var obj = document.getElementById('a1'); //双引号,单引号都可以  
  6.                 //innerHTML属性:可以访问或者设置节点的html的属性值  
  7.                 //alert(obj.innerHTML);   
  8.                 obj.innerHTML = "为什么点我"; //双引号单引号都可以  
  9.             }  
  10.             function f2(){  
  11.                 var obj = document.getElementById('d1');  
  12.                 alert(obj.innerHTML);  
  13.             }  
  14.             function f3(){  
  15.                 var obj = document.getElementById('username');  
  16.                 //value属性:可以获取文本输入框的值和改变值  
  17.                 alert(obj.value); //获得值  
  18.                 obj.value = 'abc';//改变值  
  19.             }  
  20.               
  21.         </script>  
  22.     </head>  
  23.   
  24.     <body style="font-size:30px;font-style:italic;">  
  25.         <!--javascript:; 表示是一个空白的js语句-->  
  26.         <a href="javascript:;" id="a1" onclick="f1();">click me</a><br/>  
  27.         <div id="d1" ><span>你好</span></div><br/>  
  28.         <input type="text" id="username" name="username"/><br/>  
  29.         <input type="button" value="点我吧" onclick="f3();"/>  
  30.     </body>  
  31. </html>   
第二种方式

var arr = node.getElementsByTagName('tagName');

  1. <html>  
  2.     <head>  
  3.         <style>  
  4.             ul{  
  5.                 list-style-type:none;     
  6.             }  
  7.             ul li{  
  8.                 float:left;  
  9.                 border:1px solid black;  
  10.                 margin-left:10px;  
  11.                 width:100px;  
  12.                 height:40px;  
  13.                 background-color:red;  
  14.                 cursor:pointer;               
  15.             }  
  16.             .selected{  
  17.                 background-color:#ff88ee;  
  18.             }  
  19.         </style>  
  20.         <script src="myjs.js"></script>  
  21.         <script>  
  22.             function doAction(index){  
  23.                 var arr = $('u1').getElementsByTagName('li');  
  24.                 for(i=0; i<arr.length; i++){  
  25.                     arr[i].className = '';  
  26.                 }  
  27.                 var obj = $('l'+index);  
  28.                 obj.className = 'selected';  
  29.             }  
  30.         </script>  
  31.     </head>  
  32.     <body style="font-size:30px;">  
  33.         <ul id="u1">  
  34.             <li onmouseover="doAction(1);" id="l1">选项一</li>  
  35.             <li onmouseover="doAction(2);" id="l2">选项二</li>  
  36.             <li onmouseover="doAction(3);" id="l3">选项三</li>  
  37.         </ul>  
  38.     </body>  
  39. </html>   
第三种方式

使用遍历的方式(浏览器兼容性差)

parentNode

previousSibling 前一个兄弟

nextSibling 下一个兄弟

childNodes 所有子节点

firstChild 前一个子节点

lastChild 后一个子节点

遍历的方式因为有浏览器的兼容性问题,尽量少用

二、创建

document.createElement(tagName);            //tagName表示标记名

三、添加

node.appendChild(obj);  //作为最后一个孩子添加

node.insertBefore(obj, refNode);  //添加到refNode的前面

node.replaceChild(obj, refNode);  //替换refNode

四、删除

node.removeChild(obj);

  1. <html>  
  2.     <head>   
  3.         <script>  
  4.             function f1(){  
  5.                 var obj = document.createElement('div');      
  6.                 obj.innerHTML = '兴趣最重要...';  
  7.                 obj.className = 's1';  
  8. var obj2 = document.getElementById('d1');
  9. var obj3 = document.getElementById('a1');
  10.             //  obj2.appendChild(obj);     
  11.             //  obj2.insertBefore(obj, $('a1'));   
  12.             //  obj2.replaceChild(obj, $('a1'));  
  13.                 obj2.removeChild($(obj3);  
  14.             }  
  15.         </script>  
  16.         <style>  
  17.             .s1{  
  18.                 width:200px;  
  19.                 height:100px;  
  20.                 background-color:red;  
  21.             }  
  22.         </style>  
  23.     </head>  
  24.           
  25.     <body style="font-size:30px;" id="d1">  
  26. <!--         <a href="javascript:alert('hello');">如何学好java</a>  -->  
  27.         <a id="a1" href="javascript:;" onclick="f1();">如何学好java</a>  
  28.     </body>  
  29. </html>  

五、样式

第一种方式:修改节点的className属性

比如:var obj = document.getElementById('id1');    obj.className = 's1'; //使用s1样式  ****见例子:表单验证****

第二种方式:修改节点的style属性

1.必须是内联样式

2.如果要修改的样式属性名包括"-",比如background-color,则要按照如下方式修改node.style.backgroundColor = 'red';

  1. <html>  
  2.     <head>  
  3.         <style>  
  4.             #d1{  
  5.                 width:80px;  
  6.                 height:80px;  
  7.                 background-color:blue;  
  8.                 position:relative;  
  9.             }  
  10.         </style>  
  11.         <script>  
  12.             function f1(){  
    1.        var obj2 = document.getElementById('d1');
  13.                 var v1 = parseInt(obj2.style.left);  
  14.                 obj2.style.left = v1 + 50 + 'px';  
  15.             }  
  16.         </script>  
  17.     </head>  
  18.     <body>  
  19.         <div id="d1" style="left:10px;"></div>  
  20.         <input type="button" value="click me"  
  21.         onclick="f1();"/>  
  22.     </body>  
  23. </html>  

如何禁止浏览器的两种默认行为:

点击连接,浏览器会向href属性指向的地址发请求

点击表单提交按钮,浏览器会提交表单

禁止的方式

<a href="" onclick="return false;"></a>

<from onsubmint="return false;"></form>


0 0
原创粉丝点击