首页 > 其他分享 >通过三个代码实例,教你快速了解js(上)

通过三个代码实例,教你快速了解js(上)

时间:2024-03-30 21:31:26浏览次数:25  
标签:function style obj log 代码 js 实例 var console

实例1、

index.html 代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="index.js">
    <style>
        .demo {
            width: 200px;
            height: 200px;
            background: green;
            transition: all 6s ease;
            transform: rotate(720deg);
        }
    </style>

</head>

<body>

    <div id="zy">aaaa</div>

    <div id="qcby">bbbb</div>

    <script src="index.js">
    </script>

</body>

</html>

index.js 代码

js修改css样式

第一步:获取要修改css样式的目标元素 var obj=document.getElementById() 
第二步:修改样式 obj.style.样式属性 = 样式值 

// 获取ID叫zy的元素
// var obj = document.getElementById("zy")

//var obj = document.getElementById("zy")
//var qcby = document.getElementById("qcby")

一、函数使用的两个层次


1、作为函数使用

(直接函数调用) 函数名+()  myFun()  


2、作为值来使用


        2.1、作为函数源代码使用

        函数名     myFun

 
        2.2、作为函数返回值使用

        函数名+()  

主题:交互方式

//1、直接到html上给onclick等属性赋值 js逻辑   <div id="zy" onclick="console.log('123');alert('jl')">qcby</div>
//2、把js逻辑封装成函数,通过html上给onclick等属性赋值 函数调用  <div id="zy" onclick="myFun">qcby</div>
//3、把js逻辑封装成函数,通过html对应的dom对象的onclick等属性赋值 函数
//obj.onclick = myFun
//qcby.onclick = myFun
//function myFun() {
//    obj.style.width = "100px"
//    obj.style.height = "100px"
//    obj.style.background = "red"
//}

函数(方法)定义

本质:把逻辑封装,到达解耦的目的

//function myFun() {
//    console.log("123")
//    alert('jl')
//}
函数调用

本质:把函数执行  myFun()

//console.log(document)
//console.dir(document)    以对象的形式打印
//document.onmouseout = function() {
//    var c = 10
//    alert(c)
//}

// 点击页面变换背景颜色
//function changeBg() {
//    var bg = "";
//    for (var i = 0; i < 6; i++) {
//        bg += Math.round(Math.random() * 9)
//    }
//    document.body.style.backgroundColor = "#" + bg;
//}
//document.onclick = changeBg;
匿名函数

定义   function() /中间无空格,然后作为值 赋给变量 

//var f = function() {
//    obj.style.width = "100px"
//    obj.style.height = "100px"
//    obj.style.background = "red"
//}

//obj.onclick = function() {
//    obj.style.width = "100px"
//    obj.style.height = "100px"
//    obj.style.background = "red"
//}

二、变量类型 


1、基本类型 

// 1、字符串 var a="aaa"                    单引号双引号都可"" ''
// 2、数字类型 var a=9.6
// 3、布尔类型 var a=true  (fales)         真假
// 4、undefined类型  var a ;  alert(a)      只声明但是没有赋值
// 5、null                                  涉及一个量,但这个量本身不存在

2、复合类型

// 1、数组[]  var arr= [6,"bc",true,undefined,["efg",8]]    / arr[0]第一个元素
// 2、对象{}  console.log(person.name) /访问person的name
//var person = {
//    name: "李",
//    age: 40,
//    children: [{
//        name: "王",
//        age: 15
//    }, {
//        name: "张",
//        age: 18
//    }]
//}
//console.log(person)

变量的使用方式


//
// 方式一、字面量定义变量类型
//var a = 5
//var b = "zy"
//var c = [1, 3, 5]
//var d = {}
//var e = function() {
//    console.log("我是个函数")
//}

// 方式二、面向对象定义变量类型
//var a_1 = new Number("5")
//var b_1 = new String("zy")
//var c_1 = new Array("1", "3", "5")
//var d_1 = new Object()
//var e_1 = new Function('console.log("我是个函数")')
//e_1()

//console.log(a_1)
//console.log(b_1 + ",你好")
//console.log(c[0])
//console.log(c_1[0])

//var a = 6
//var b = "6"
//console.log(typeof a)
//console.log(typeof(typeof b == "string"))
// 查看类型 :typeof(a) 等于typeof a

三、修改样式 (两种方式)

var obj = document.getElementById("zy")
obj.onclick = myFun

第一种方式      

obj.style.样式属性 = 样式值

function myFun() {
    obj.style.width = "200px"
    obj.style.height = "200px"
    obj.style.background = "green"
    obj.style.transition = "all 6s ease"
    obj.style.transform = "rotate(720deg)"
}

第二种方式      

obj.className = css选择器    demo是在<head> <style>定义的(内部)  (内部、外部(.css文件)都可以)

//function myFun() {
//    obj.className = "demo"
//}
//

实例2、

index.html代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

</head>

<body>

    <ul>
        <li>aa01</li>
        <li>aa02</li>
        <li>aa03</li>
        <li>aa04</li>
        <li>aa05</li>
        <li>aa06</li>
        <li>aa07</li>
        <li>aa08</li>
        <li>aa09</li>
    </ul>
    <script src="js/index.js">
    </script>
</body>

</html>

index.js代码

四、dom 操作 - 查 增 改 删


// 以id值来寻找元素  getElementById()
// 以class值来寻找元素们  getElementsByClassName()
// 以html元素名称来寻找元素们  getElementsByTagName()
// 以选择器方式获取第一个元素  querySelector()
// 以选择器方式获取所有元素  querySelectorAll()
//var first = document.querySelector("ul li:first-child");
//console.log(first)
//first.onclick = function() {
//    first.style.background = "red"
//}

element.removeChild(Node) //移除括号内的节点

先获取 然后就可以进行操作(改值)

1.获取element.getAttribute(attributeName)     //括号传入属性名,返回对应属性的属性

2.设置element.setAttribute(attributeName,attributeValue)   //传入属性名及设置的值

element.appendChild(Node);   //往element内部最后面添加一个节点

elelment.insertBefore(newNode,existingNode); //在element内部的中在existingNode前面插入newNode

(js修改css,交互,函数,this,for)

点击切换变色  

var obj = document.querySelectorAll("ul li")
for (var i = 0; i < obj.length; i++) {
    console.log(i)
    obj[i].onclick = function() {

        //把所有li元素的样式取消
        for (var j = 0; j < obj.length; j++) {
            obj[j].style.background = "none"
            obj[j].style.color = "black"
        }

        //this表示当前调用者
        this.style.background = "red"
        this.style.color = "blue"
    }

}

标签:function,style,obj,log,代码,js,实例,var,console
From: https://blog.csdn.net/Jilit_jilit/article/details/137071202

相关文章

  • 【每日代码】(10/21)
    咖啡店售货。几段关于继承、抽象类的代码。如下——首先,定义一个抽象父类CoffeeabstractclassCoffee{//定义抽象父类abstractdoubleCoffee(inta);//定义抽象方法MF·1}然后,定义它的派生实体子类Natie,用它来实现Coffeepackagecn.jsu.www8;classNatie......
  • 使用 wsl+makefile+clangd编辑stm32代码环境的搭建
    使用wsl+makefile+clangd编辑stm32代码环境的搭建安装wsl环境可以看看下面的文章安装与换源都提及,相信大家可以安装成功的https://www.cnblogs.com/banmei-brandy/p/16218660.html安装make、bear、clangd、arm-none-eabi-gcc、最新的构建库sudoaptinstallmakebearclang......
  • Blazor学习记录_8.CSS隔离和代码隔离_异常处理_流式渲染
    19.CSS隔离和代码隔离19.1代码隔离使用C#partial关键字,创建一个与razor文件同名,扩展名加.CS的C#类文件,然后把razor文件中的@code中的代码迁移至cs文件中。注意命名空间、泛形参数声明、依赖注入的迁移19.2CSS隔离如同前面代码隔离文件一样,我们创建一个组件样式文......
  • Java基础 TCP协议下,收发数据代码实现
     --------------------------------------------------------------------------------------------------------------------------------- 代码实现:1.发送数据:publicstaticvoidmain(String[]args)throwsException{//1.创建Socket对象。细节:在创建对象的同......
  • JS数组与对象
    数组什么是数组:数组是可以用来存储一组数据,数组中的数据可以存储任意的数据类型如何定义数组:用[]定义数组,在[]中,多个元素/值中间用逗号分隔数组的格式:变量名=[元素或值]获取数组中的值:变量名[下标]数组元素是一对:下标和值;每一个元素都有相对应的下标,下标从0开始,依次递增......
  • 深度学习(二),感知机——超详细公式推导及代码实例
    一,感知机(Perceptron) 1.1介绍    大名鼎鼎的感知机,是一个二分类模型,也是最早的AI模型之一。它的原理简单,便于理解,且实现简单,在线性分类问题上效果卓越,在60年代备受瞩目。但也正是因为它受到的期望过高,当潜在的一些问题暴露出来后(如无法拟合XOR函数,无法解决非线......
  • 图解《程序员面试常见的十大算法》及代码实现
    关注我,持续分享逻辑思维&管理思维;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》, 《做好面试准备,迎接2024金三银四》。推荐热榜内容:《C#实例:SQL如何添加......
  • Java基础 UDP协议下,收发数据的代码实现
    一、发送数据步骤:1.创建DatagramSocket对象,负责利用UDP协议往外发送数据(DatagramSocket中既有发送的方法,也有接收的方法)2.把数据打包(DatagramPacket)。把所有数据放到DatagramPacket当中3.发送数据4.释放资源 代码实现:publicstaticvoidmain(String[]args)throwsE......
  • PTA L2-039 清点代码库
    上图转自新浪微博:“阿里代码库有几亿行代码,但其中有很多功能重复的代码,比如单单快排就被重写了几百遍。请设计一个程序,能够将代码库中所有功能重复的代码找出。各位大佬有啥想法,我当时就懵了,然后就挂了。。。”这里我们把问题简化一下:首先假设两个功能模块如果接受同样的输......
  • 30 天精通 RxJS (04):什么是 Observable ?
    要理解Observable之前,我们必须先谈谈两个设计模式(DesignPattern),IteratorPattern跟ObserverPattern。今天这篇文章会带大家快速的了解这两个设计模式,并解释这两个Pattern跟Observable之间的关系!ObserverPatternObserverPattern其实很常遇到,在许多API的设计......