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

JavaScript进阶篇

慕课官方号 页面重构设计
难度入门
时长 8小时55分
  • newnode.innerHTML=oldnode.innerHTML

    这句代码怎么理解?

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

    所以你要把旧的oldnode内容赋值给新的newnode,要不然newnode是无内容,只是简单的改了个属性,把b变成了i,显示出来的是空。

    replaceChild是对子节点进行替换,但是oldNode很显然并没有子节点,如果想要对他进行替换的话,就得往上找他的父节点,然后对他的父节点的子节点进行替换,也就是对他自己进行了替换。


    //获取id为oldnode的<b>标签

    var oldnode=document.getElementById("oldnode");  

    //获取id为oldnode标签中的文本

    var oldHTML=oldnode.innerHTML; 

    //创建一个新的<i>标签

     var newnode=document.createElement("i"); 

    //replaceChild(newnode,oldnode)方法是替换子节点,所以要先获取<b>标签的父节点然后替换新的子节点,替换之后的节点相当于把之前的整个节点都替换了,包括节点里面的内容,所以现在插入的是一个新的空节点

     oldnode.parentNode.replaceChild(newnode,oldnode);  

    //在新节点中插入之前的文本

    newnode.innerHTML=oldHTML; 




    查看全部
  • 返回带有指定名称的节点对象的集合。

    语法:

    document.getElementsByName(name)

    与getElementById() 方法不同的是,通过元素的 name 属性查询元素,而不是通过 id 属性。

    注意:

    1. 因为文档中的 name 属性可能不唯一,所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。

    2. 和数组类似也有length属性,可以和访问数组一样的方法来访问,从0开始。

    查看全部
  • 区分substring()  和 slice()都是截取但是,前者是针对string 类型的对象,后者是针对数组类型的对象  还有,slice 单词本身的意思就是把...切成片,还有名次 片儿的意思,比如,a slice of bread 一片面包

    查看全部
    0 采集 收起 来源:选定元素slice()

    2018-03-24

  • 不要把i<content.childNodes.length做为判断条件,举例说明,IE下执行,节点个数5个,当我点一次删除按钮。

    注意:5个节点分别对应下标是从0开始:    1[0]         2[0]         3[0]           4[0]          5[0] 

    i=0     content.childNodes.length=5      0<5  删除第一个节点后,继续循环

    i=1     content.childNodes.length=4      1<4   删除第二个节点后,继续循环

    i=2     content.childNodes.length=3       2<3   删除第三个节点后,继续循环

    i=3   content.childNodes.length=2          3<2  不成立,所以不继续。

    这也就是为什么一次删除不了所以节点。


    查看全部
  • while(x && x.nodeType!=1){

    ########

    }就是说,这里是两个条件,x=true && x.nodeType!=1

    原来想的应该要这样(x && x.nodeType)!=1才是同时不为1

     while (x && x.nodeType!=1)这里是x存在即n.nextSibling存在并且x.nodeType不为元素节点时执行语句

    查看全部
    0 采集 收起 来源:访问兄弟节点

    2018-03-24

  • 1. screen.availWidth 属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如任务栏。

    2. screen.availHeight 属性返回访问者屏幕的高度,以像素计,减去界面特性,比如任务栏。


    查看全部
  • window.screen 对象包含有关用户屏幕的信息。
    1. screen.height 返回屏幕分辨率的高
    2. screen.width 返回屏幕分辨率的宽

    查看全部
  • availHeight:窗口可以使用的屏幕高度,单位像素;
    availWidth:窗口可以使用的屏幕宽度,单位像素;
    colorDepth:用户浏览器表示的颜色位数,通常为32位(每像素的位数);
    pixelDepth:用户浏览器表示的颜色位数,通常为32位(每像素的位数)(IE不支持此属性);
    height:屏幕的高度,单位像素;
    width:屏幕的宽度,单位像素;

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

    2018-03-24

  • 最后想要得出循环结果,务必得写“+sum。
    <!DOCTYPE html>
    <html>
    <head>
       <meta charset="UTF-8">
       <title></title>
       <script type="text/javascript">
          var page,sum=0;//page是书的页数,sum是合计
    for(page=10;page<=15;page++)//初始化值,循环条件,循环后条件值更新
    {
        sum=sum+page;
           }
           document.write("sum合计:"+sum);


       </script>
    </head>

    查看全部
  • <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript">
            var boys=10;//boys变量存储孩子个数,假设为10
     switch(boys)//switch实现判断,case10匹配
     {
                case 1:
                case 2:
                document.write("轻松");
                break;
                case 3:
                document.write("有点累");
                break;
                case 4:
                document.write("累死了");
                break;
                case 5:
                case 6:
                document.write("崩溃边缘");
                break;
                default:
                alert("出现错误");
    
    
            }
    
    
        </script>


    查看全部
  • var otest = document.getElementById("要插入的列表ID"); var node=document.getElementById("指定某节点的ID"); var newnode=document.createElement("插入类型"); newnode.innerHTML="插入内容"; test.insertBefore(新节点,某节点);

    查看全部
  • <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript">
            var kionn="40";//设置最高气温是30度
            if (kionn<=10)
            {document.write("天气寒冷");
    
            }
            else if(kionn<=24)
            {
                document.write("天气凉爽");
            }
            else if(kionn<=40)
            {
                document.write("天气炎热");
            }
            else
     {
                document.write("应出现天气警报");
            }
    
    
    
        </script>


    查看全部
  • innerHTML和createTextNode都可以把一段内容添加到一个节点中,区别是如果这段内容中有html标签时表现就不同了,在createTextNode中会当作文本处理,不会被浏览器解析,但用innerHTML就会被当作HTML代码处理。 例如:第1种写法:newnode.innerHTML="<p>php</p>";          第2种写法:newtext= creatTextNode("<p>php</p>"); 第1种结果:php 第2种结果:<p>php</p>

    查看全部
  • 首先赋值=

    其次是==

    查看全部
  • while (a && a.nodeType != 1) 当 a 是 null 时,条件为假,退出循环。 while (a.nodeType != 1) 当 a 是 null 时,a.nodeType 会抛异常,程序运行失败。

    查看全部
    0 采集 收起 来源:访问兄弟节点

    2018-03-24

举报

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

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