标签:选择 完成 转化 一个 nts UNC index sele hit
<div id="id" class="ftn1"> </div>
<div id="id" class="ftn1"> </div>
//第一种  
console.log(d);//可以同时找到两个id为id的标签
//第二种,所有出现在页面的内容都属于文档对象,文档(document)高于页面
//在文档(document)中出现的内容都是文档(document)节点
//节点:标签节点(元素)、文本节点、注释节点、<doctype>节点
getElement(最严谨)
//第三种方式
querySelector(最方便)<div id="id" class="ftn1"> 我是div111</div>
<div id="id" class="ftn1"> 我是div222</div>
var div=document.getElementById('id');#只能检索到页面的第一个满足要求的标签
console.log(div)
===><div id="id" class="ftn1"> 我是div111</div><body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
<script>
            var body=document.getElementById('wd')
      //getElementById只能由documen调用,因为我们要保证文档中一个ID只能出现一次,而document就是减速文档全部,而body只能检索自身标签内部区域
            var hdiv=body.getElementsByClassName('item')
      console.log(hdiv)
</script>
===>        <div id="hd" class="item"></div>
                <div id="hd" class="item"></div><input name="123"></input>
var hname=document.getElementByName('123')
console.log(hname)
===><input name="123"></input><body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
var itag=document.getElementsByTagName('div)
console.log(itag)
==><div id="hd" class="item"></div>
        <div id="hd" class="item"></div>  //找到所有的div标签<body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
var qs=document.querySelector(body>.item)
//只能检索第一个满足条件的
==><div id="hd" class="item"></div>8.document.querySelectorAll
<body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
var qs=document.querySelectorAll(body>.item)
//检测到所有符合条件的
==》<div id="hd" class="item"></div>
        <div id="hd" class="item"></div>
<body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
var qs=document.querySelectorAll(.hd)
//检测到所有符合条件的,包括id,所以不严谨
==》<div id="hd" class="item"></div>
        <div id="hd" class="item"></div> ? 点击事件:鼠标点击标签
? 双击事件:鼠标双击标签
? 悬浮事件:鼠标悬浮到标签
? 键盘按下事件:键盘按下|抬起
重点:WIN | documet | html |body
<body id="wd">
                <div id="hd" class="item"></div>
                <div id="hd" class="item"></div>
</body>
var qs=document.querySelectorAll(.hd)
qs.onclick=function (){
                alter("123")
}<div class="outer">
    <div class="div1" id="h1"></div>
    <div class="div1" id="h2"></div>
</div>
var di=document.querySelectorAll('.div1');
    di[0].onclick=function () {
        di[0].style.backgroundColor="yellow";
    }
    var di=document.querySelectorAll('.div1');
    di[1].onclick=function () {
        di[0].style.backgroundColor="blue";
    }
<div class="outer">
    <div class="div1" id="h1"></div>
    <div class="div1" id="h2"></div>
</div>
var di=document.querySelector('.div1');
    di.onclick=function () {
        this.style.backgroundColor="yellow";
    }
    var di=document.querySelectorAll('.div1');
    di[1].onclick=function () {
        di[0].style.backgroundColor="blue";
    }<div class="outer">
    <div class="div1" id="h1">001</div>
    <div class="div1" id="h2">002</div>
    <div class="div1" id="h3">003</div>
</div>
var hh1=document.querySelector('#h1');
    var hh2=document.querySelector('#h2');
    var hh3=document.querySelector('#h3');
    var text=hh1.innerText;
        //删除文本
        hh1.innerText="";var hh1=document.querySelector('#h1');
    var hh2=document.querySelector('#h2');
    var hh3=document.querySelector('#h3');
    var text=hh1.innerText;
        //修改文本
        hh1.innerText="这时修改的文本";var hh1=document.querySelector('#h1');
    var hh2=document.querySelector('#h2');
    var hh3=document.querySelector('#h3');
    var text=hh1.innerHTML;
        //修改文本(可以添加整个标签及样式)
hh1.innerHTML="<b>这是加粗的版本</b>";//只寻找内部的标签
var outer=hh1.outerHTML
console.log(outer)//会将自身的标签也携带进去<div class="outer">
    <div class="div1" id="h1">001</div>
    <div class="div1" id="h2">002</div>
    <div class="div1" id="h3" style="backgrund:pink">003</div>
</div>
var hh1=document.querySelector('#h1');
var hh2=document.querySelector('#h2');
var hh3=document.querySelector('#h3');
var bgColor=hh3.style.backgroundColor;//js只能获取标签的行间式样式,也就是计算前的样式
console.log(bgColor)
===>pink
//修改style
hh3.style.backgroundColor='yellow';
//获取计算后的样式
//window.getComputedStyle(标签,伪类(没有null)).backgroundColor;可以获得计算后的样式,也可以获得行间式,但他只能读,不能修改行间式样式
var bgColor=window.getComputedStyle(hh3,null).backgroundColor;
console.log(bgColor)
==>'yellow'
//第二种方式
var bgColor=getComputedStyle(hh3,null).getPropertyValue('background-color');
console.log(bgColor)//点击div标签的切换颜色
//css
<style>
  .div{
    width:100px;
    height:100px;
    background:red;
  }
  </style>
//html
<div class="div1" style="background:red"></div>
//javascript
//获得标签
var hh=document.querySelector('.div1')
    console.log(hh)
//设置获得标签的点击事件
hh.onclick=function (){
  //查看标签的原有颜色
  var bgColor=getComputedStyle(hh,null).backgroundColor;
  console.log(bgColor)
  //判断标签的颜色是否为rgb(255, 0, 0)
  if (bgColor=='rgb(255, 0, 0)'){
      this.style.backgroundColor="blue";
      }
  else {
    this.style.backgroundColor="red";
  }
} .part1{
        /*width: 100px;*/
        
    }
    .part1:after{
        content: "";
        display: block;
        clear: both;
    }
    .part1 div{
        color: red;
        width: 100px;
        height: 100px;
        text-align: center;
        line-height: 100px;
        float: left;
    }
    .div1{
        background: yellow;
    }
    .div2{
        background: paleturquoise;
    }
    .div3{
        background: darkblue;
    }
    .div4{
        background:aqua;
    }
</style>
<body>
<div class="part1">
    <div class="div1">1</div>
    <div class="div2">2</div>
    <div class="div3">3</div>
    <div class="div4">4</div>
</div>
<script>
    var divs=document.querySelectorAll('.part1 div');
    console.log(divs)
    for (var i=0;i<divs.length;i++){
       divs[i].onmouseenter=function () {
        console.log(i)//此时打印的i会一直是4
    }
    }<script>
    var divs=document.querySelectorAll('.part1 div');
    console.log(divs)
    for (let i=0;i<divs.length;i++){
       divs[i].onmouseenter=function () {
        console.log(i)//此时打印的i会一直是4
    }
    }
//将变量i定义为块作用域<style>
    .part1:after{
        content: "";
        display: block;
        clear: both;
    }
    .part1 div{
        color: white;
        width: 100px;
        height: 100px;
        text-align: center;
        line-height: 100px;
        float: left;
    }
    .div1{
        background: yellow;
    }
    .div2{
        background: paleturquoise;
    }
    .div3{
        background: darkblue;
    }
    .div4{
        background:aqua;
    }
</style>
<body>
<div class="part1">
    <div class="div1">1</div>
    <div class="div2">2</div>
    <div class="div3">3</div>
    <div class="div4">4</div>
</div>
<script>
    var divs=document.querySelectorAll('.part1 div');
    console.log(divs);
//对div1 | div2 | div3 | div4循环进行时间绑定
    for (let i=0;i<divs.length;i++){
      //onmuseenter鼠标悬浮事件
       divs[i].onmouseenter=function () {
         //调用背景颜色改变函数
        changeColor(i);
    }
    }
    function changeColor(index){
      //通过mouseenter捕捉的事件与循环的i对应,从而改变训中标签的状态
        for (let i=0;i<divs.length;i++){
          //先将所有标签的背景先设置一下
       divs[i].style.backgroundColor='red';
            if (i==index){
              //匹配修改选中的标签
           divs[i].style.backgroundColor='black'
            }
    }
    }<style>
    .part1:after{
        content: "";
        display: block;
        clear: both;
    }
    .part1 div{
        color: white;
        width: 100px;
        height: 100px;
        text-align: center;
        line-height: 100px;
        float: left;
        background: darkorchid;
    }
    h1{
        height: 100px;
        display: block;
        background: saddlebrown;
        color: white;
    }
</style>
<body>
<div class="part1">
    <div class="div1">1</div>
    <div class="div2">2</div>
    <div class="div3">3</div>
    <div class="div4">4</div>
</div>
<h1></h1>
<script>
    var data=["标题一","标题二","标题三","标题四"]
    var divs=document.querySelectorAll('.part1 div');
    console.log(divs);
    for (let i=0;i<divs.length;i++){
       divs[i].onmouseenter=function () {
        changeColor(i);
        changeContent(i);
    }
    }
    function changeColor(index){
        for (let i=0;i<divs.length;i++){
       divs[i].style.backgroundColor='red';
            if (i==index){
           divs[i].style.backgroundColor='black'
            }
    }
    }
    var h1=document.querySelector('h1');
    function changeContent(index) {
        h1.innerText=data[index]
    }
</script>//实例,实现标签类名修改
<style>
    .y{
        width: 100px;
        height: 100px;
        background: red;
        border-radius: 50%;
    }
    .f{
        width: 100px;
        height: 100px;
        background: pink;
    }
    .g{
        display:none;
    }
</style>
<ul>
    <li class="l1">y</li>
    <li class="l2">f</li>
    <li class="l3">g</li>
</ul>
<div class="box"></div>
<script>
    var box=document.querySelector('.box');
    var l1=document.querySelector('.l1');
    var l2=document.querySelector('.l2');
    var l3=document.querySelector('.l3');
    l1.onclick=function () {
        box.className='y'
    }
    l2.onclick=function () {
        box.className='f'
    }
    l3.onclick=function () {
        box.className='g'
    }
</script>标签:选择 完成 转化 一个 nts UNC index sele hit
原文地址:https://www.cnblogs.com/chuwanliu/p/11025229.html