SOURCE

console 命令行工具 X clear

                    
>
console
window.onload=function(){
    //document.getElementById
    var oDiv1=document.getElementById("Div1");
    console.log("The node type of oDiv1 is"+oDiv1.nodeType);
    
    var oAttributeNode=oDiv1.getAttributeNode("id");
    console.log("The node type of AttributeNode is"+oAttributeNode.nodeType)

    var oTextNode=oDiv1.childNodes[0];
    console.log("The node type of oTextNode is"+oTextNode.nodeType);

    //document.getElementsByTagName
    var oDivs=document.getElementsByTagName("div");
    console.log("The length of oDivs is"+oDivs.length);

    if(oDiv1==oDivs[0]){
        console.log("We are the same node.");
    }

    var oUls=document.getElementsByTagName("ul");
    var oLisInUl1=oUls[0].getElementsByTagName("li");
    var oLisInDoc=document.getElementsByTagName("li");
    console.log("The length of oLisInUl1 is"+oLisInUl1.length);
    console.log("The length of oLisInDoc is"+oLisInDoc.length);
    //var oLi=oUls[0].getElementById("li");
    
    //getElementsByClassName()
    var oLists=document.getElementsByClassName("list");
    console.log("The length of oLists is"+oLists.length);

    var oRadios = oDivs[1].getElementsByClassName("radio");
    console.log("The length of oRadios is " + oRadios.length);

    var oRadios3 = oDivs[2].getElementsByClassName("radio");
    console.log("The length of oRadios3 is " + oRadios3.length);

    //querySelector
    //通过伪类选择器选择checked状态为真的input元素
    var oInputFemale=document.querySelector("input:checked");
    console.log("line 54: " + oInputFemale.value);
    
    var oInputs = document.querySelectorAll("input");
    console.log("line 57: " + oInputs.length);

    //通过元素选择器查找所有input元素,这种最好使用getElementsByTagName,效率更高
    oInputs[1].checked=true;
    oInputs[3].checked=true;

    //通过类选择器查找所有class为radio的元素,这种最好使用getElementsByClassName,效率更高
    var oClassInputs = document.querySelectorAll(".radio");
    oClassInputs[0].checked = true;

    //通过id选择器查找第一个id为Li11的元素,这种最好使用getElementsById,效率更高
    var oLill = document.querySelector("#Lill");
    oLill.style.color="red";

    //查找父元素的id为List2的所有li元素
    var oList2Lis = document.querySelectorAll("#List2 li");
    oList2Lis[0].style.color = "blue";
    oList2Lis[1].style.color = "green";
    oList2Lis[2].style.color = "orange";

    //通过getElementsByName查找元素
    var oNamedRadios = document.getElementsByName("gender");
    console.log("Line 80: " + oNamedRadios[0].value);
    oNamedRadios[1].checked = true;

    var oFruits = document.getElementsByName("fruit");
    console.log(" Line 80:" + oFruits[0].value);
    oFruits[0].checked = false;

    console.log(document.title);
    console.log(document.body.tagName);

    //console.log(document.body.childNodes.length)

    //创建简单元素
    var oDynamicButton = document.createElement("button");
    var oTextNode = document.createTextNode("提交");

    oDynamicButton.appendChild(oTextNode);
    //document.body.appendChild(oDynamicButton);
    document.body.insertBefore(oDynamicButton,oUls[0]);

    //创建可以动态添加对象的元素
    var oAppendInput = document.createElement("input");
    var oDynamicButton = document.createElement("button");
    var oTextNode = document.createTextNode("替换");

    oDynamicButton.appendChild(oTextNode);

    document.body.insertBefore(oDynamicButton,oUls[0]);

    oDynamicButton.onclick=function(){
        var oDiv1=document.getElementById("oDiv1");
        var oPHi=document.createElement("p");
        var oPText=document.createTextNode("Hi");
        oPHi.appendChild(oPText);

        oDiv1.replaceChild(oPHi,oDiv1.childNodes[1]);
    }
    //查看属性
    console.log("Line 114: The id of Odiv1: " + oDiv1.id);
    console.log("Line 115: The data of Odiv1: " + oDiv1.getAttribute("id"));
    //不能通过对象属性获取自定义属性的值
    console.log("Line 116: The data of Odiv1: " + oDiv1.data);
    console.log("Line 117: The data of Odiv1: " + oDiv1.getAttribute("data"));
    console.log("Line 114: The id of Odiv1: " + oDiv1.className);

    //设置属性
    var oInput = document.getElementById("insertInput");
    //oInput.value = "Enter...";
    oInput.setAttribute("value","Enter");

    //删除属性
    oInput.removeAttribute("value");
    //oUls[0].removeAttribute("className");

    //判断属性是否存在
    if(oInput.hasAttribute("value")){
        console.log("value is the attribute of oInput");
    }
}

function insertChild() {
    var oInput = document.getElementById("insertInput");
    var oInputText = oInput.value;
    console.log(oInputText);

    var oUl = document.getElementById("List1");
    var oLis = oUl.getElementsByTagName("li");

    var oCreatedLi = oLis[0].cloneNode(false);

    oCreatedLi.textContent=oInputText;
    oUl.insertBefore(oCreatedLi, oLis[0]);
}

function removeTop(){
    var oUl=document.getElementById("List1");
    var oLis=oUl.getElementsByTagName("li");

    oUl.removeChild(oLis[0]);
}

function appendChildClone() {
    var oInput = document.getElementById("appendInput");
    var strValue = oInput.value;
    console.log(oInputText);

    var oList2= document.getElementById("List2");
    var oLis = oList2.getElementsByTagName("li");

    var oCreatedLi = oLis[1].cloneNode(true);

    oCreatedLi.textContent=strValue;
    oList2.appendChild(oCreateLi);
} 

function removeBottom(){
    var oList1=document.getElementById("List2");
    var oLis=document.getElementsByTagName("li");

    oList1.removeChild(oLis[oLis.length-1]);
}
<!DOCTYPE html> 
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
        <div id="Div1" data="userDefined" class="div1">
            <p id="Paragraph">Hello</p>
            World
        </div>
        <ul id="List1" class="list">
            <li id = "Lill"> Html </li>
            <li> Javascript </li>
            <li> CSS </li>
            <li> Webpack </li>
        </ul>
        <input id="insertInput" type="text"></input>
        <button onclick="insertChild">插入列表元素顶部</button>
        <ul id="List2" class="list">
            <li> Vue </li>
            <li> React </li>
            <li> Angular </li>
        </ul>
        <input id="appendInput" type="text"></input>
        <button onclick="appendChild()">添加到列表元素的尾部</button>
        <div>
            你的性别是:
            <input class="radio" type="radio" name="gender" checked="true" value="女"></input>
            <input class="radio" type="radio" name="gender" value="男"></input>
        </div>
        <div>
            你喜欢那些水果:
            <input type="checkbox" name="fruit" checked="true" value="苹果">苹果</input>
            <input type="checkbox" name="fruit" value="梨"></input>
        </div>    
        <div id="DynamicDiv1"></div>
        <div id="DynamicDiv2"></div>
    </body>
</html> 
ul{
    background: lightblue;
};

#Div1{
    background-color: lavender;
};