为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
JavaScript进阶篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript进阶篇

慕课官方号 页面重构设计
难度入门
时长 8小时55分
  • 查看全部
  • <!DOCTYPE html>
    <html>
    <head>
    <title> new document </title>  
    <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>  
    <script type="text/javascript">
     
         window.onload = function(){
                     
        // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。
           change();
        
         }
       
         // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
        function add(){
            var table = document.getElementById("table");
            var newtr = document.createElement("tr");
            var td1 = document.createElement("td");
            td1.innerHTML = prompt("学号:"+"");
            newtr.appendChild(td1);
            var td2 = document.createElement("td");
            td2.innerHTML = prompt("姓名:"+"");
            newtr.appendChild(td2);
            var td3 = document.createElement("td");
            td3.innerHTML = '<a href="javascript:;" onclick="del(this)">删除</a>';
            //下面这个删除不了
           //  var a3 = document.createElement("a");
           //  a3.href = 'javascript:';
           //  a3.onclick = 'del(this)';
           //  a3.innerHTML = "删除"
           //  td3.appendChild(a3);
            newtr.appendChild(td3);
            table.appendChild(newtr);
            change();
        }
               
       
        // 创建删除函数
        function del(obj){
            var tr = obj.parentNode.parentNode;
            tr.parentNode.removeChild(tr);
        }
       
        function change(){
           // var tbody = document.getElementById('table').lastChild;  
           var tr = document.getElementsByTagName("tr");
           
            for(var i=1; i<tr.length; i++){
                tr[i].onmouseover = function(){
                    this.style.backgroundColor = "#f2f2f2";
                }
                tr[i].onmouseout = function(){
                    this.style.backgroundColor = "#fff";
                }
            }
        }
     </script>
    </head>
    <body>
           <table border="1" width="50%" id="table">
           <tr>
            <th>学号</th>
            <th>姓名</th>
            <th>操作</th>
           </tr>  
           <tr>
            <td>xh001</td>
            <td>王小明</td>
            <td><a href="javascript:;" onclick="del(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->
           </tr>
           <tr>
            <td>xh002</td>
            <td>刘小芳</td>
            <td><a href="javascript:;" onclick="del(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->
           </tr>  
           </table>
           <input type="button" value="添加一行"  onclick="add()" />   <!--在添加按钮上添加点击事件  -->
    </body>
    </html>

    该代码。新增的行也有鼠标效果,但是不明白①a href的javascript:; 和 ②tr[i].onmouseover中的this

    查看全部
    0 采集 收起 来源:编程练习

    2019-09-03

  • creen对象用于获取用户的屏幕信息。


    语法:


    window.screen.属性

    对象属性:

    5354d2810001a47706210213.jpg

    查看全部
    0 采集 收起 来源:screen对象

    2019-09-02

  • Navigator 对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本。


    对象属性:

    5354cff70001428b06880190.jpg

    查看全部
    0 采集 收起 来源:Navigator对象

    2019-09-02

  • location 对象属性:

    5354b1d00001c4ec06220271.jpg



    location 对象方法:

    5354b1eb00016a2405170126.jpg


    查看全部
    0 采集 收起 来源:Location对象

    2019-09-02

  • var body= document.body;
    //创建链接
    function createa(url,text)
    {
        var a = document.createElement("a");
        a.href = url;
        a.innerHTML = text;
        a.style.color = "red";
        body.appendChild(a);
    }
    // 调用函数创建链接
    createa("http://www.imooc.com/","慕课网");

    链接文本用a.innerHTML (hhh一开始不知道的时候还以为要用alt...

    查看全部
  •       function replaceMessage(){        
            var newnode = document.createElement("i");
            var oldnode = document.getElementById("oldnode");        
            var oldHTML = oldnode.innerHTML;        
            oldnode.parentNode.replaceChild(newnode,oldnode);        
            newnode.innerHTML = oldHTML;       
          }

    如果没有innerHTML的话,按下按钮之后,javascript直接消失。因为

     当 oldnode 被替换时,所有与之相关的属性内容都将被移除。

    查看全部
  • function clearText() {  
    var content=document.getElementById("content");
      // 在此完成该函数  
      /*方法一*/
      //   var x = content.childNodes[0];
      //   content.removeChild(x);  
      /*方法二*/
      //   for(var i=content.childNodes.length-1; i>=0; i--){
      //       var x = content.childNodes[i];
      //       content.removeChild(x);
      //   }  
      /*方法三*/  
      while(content.childNodes.length){      
      var x = content.childNodes[0];      
      content.removeChild(x);  
      }
     }


    查看全部
  • innerHTMLJS是双向功能:获取对象的内容  或  向对象插入内容;


    查看全部
  • https://img1.sycdn.imooc.com//5d6cdfa700016f8a05370273.jpg

    结果是两个空格:

    #text 3
    #text 3


    https://img1.sycdn.imooc.com//5d6cdf3e0001ec1705320202.jpg

    结果是:

    P 1
    H5 1



    查看全部
  • <body>
    <div>
      javascript  
      <p>javascript</p>
      <div>jQuery</div>
      <h5>PHP</h5>
    </div>
    <script type="text/javascript">
     var x = document.getElementsByTagName('div')[0].childNodes;
     for(var i=0; i < x.length; i++){
         document.write("节点类型:"+x[i].nodeName  +" "+x[i].nodeType+" "+x[i].nodeValue+"<br>");
     }
     
    </script>
    </body>

    结果:

    节点类型:#text 3 javascript 
    节点类型:P 1 null
    节点类型:#text 3 
    节点类型:DIV 1 null
    节点类型:#text 3 
    节点类型:H5 1 null
    节点类型:#text 3 


    #text  的nodeType为3。(JS高程p248)

    第二行的“P 1 null”,P属于Element类型。(JS高程p261)Element类型中,nodeType为1,nodeName为标签名,nodeValue为null   注意了!nodeValue是null 不是文本文字“javascript”

    第三行的“#text 3 ”,属于空格结点,因为nodeValue为空

    查看全部
  • 节点属性:

    https://img1.sycdn.imooc.com//5d6cdb770001555303840529.jpg


    查看全部
    0 采集 收起 来源:节点属性

    2019-09-02

  • 获取所有LI标签,并输出相应节点的名称、节点的值、节点的类型。

    li["+(i+1)+"]  , 应为i=0, i+1 =1,所以从1开始,li[1],li[2],......

    https://img1.sycdn.imooc.com//5d6cd0b10001a23302800389.jpg



    查看全部
    0 采集 收起 来源:节点属性

    2019-09-02

  • 如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。

    查看全部
    1. obj 是函数定义的时用到的形参,函数内的代码块用到了这个参数,你可以理解成变量名,可以任意命名

    2. 定义函数用到了几个形参,该函数被实调用的时候也必须传入几个实参

    3. onClick = dele(this),this此时是指向的是点击事件对应的那一个a标签

    4. 可以思考一下,如果不传this,如何才能找到被点击的那一个a标签;传入了 this,此时的 this 在这里就是指向了该点击对象,也就为你找到了被点击的那一个标签


    查看全部
    1 采集 收起 来源:编程练习

    2019-09-01

举报

0/150
提交
取消
课程须知
你需要具备HTML、css基础知识,建议同学们也可以想学习下js入门篇,快速认识js,熟悉js基本语法,更加快速入手进阶篇!
老师告诉你能学到什么?
通过JavaScript学习,掌握基本语法,制作简单交互式页面
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!