javascript-Web APLs (一)

Web APl 基本认知

变量声明

const 优先,如果变量会改变,就用 let

const 声明的值 不能更改 ,而且const声明变量的时候需要里面进行 初始化
l
但是对于 引用数据类型 ,const声明的变量,里面存的不是 值,不是值,不是值,是 地址

比如:

//错误写法

const girlfriend = []

girlfriend= [1,2,3]

const boy = {}

boy = {
    uname: '小帅'
}

//正确写法

const girlfriend = []

girlfriend[0] = 1
girlfriend[1] = 2
girlfriend[2] = 3

const boy = {}

boy.uname = '小帅'

建议: 数组 对象 用 const 声明

基本数据类型的值或者引用类型的地址发生变化的时候,需要用let

作用和分类

DOM 是文档对象模型  操作网页内容,可以开发网页内容特效和实现用户交
根据CSS选择器来获取DOM元素 (重点)

注意:里面写 css选择器 必须是 字符串 ,那要加引号  

1.选择匹配的第一个元素

document.querySelector('css选择器')
参数:
包含一个或多个有效的CSS选择器 字符串
返回值:
CSS选择器匹配的 第一个元素 ,一个 HTMLElement对象。
如果没有匹配到,则返回null
2. 选择匹配的多个元素
document.querySelectorAll('css选择器')
返回值:
CSS选择器匹配的 NodeList 对象集合
document.querySelectorAll('ul li')

//返回 ul 里面的所有 li

得到的是一个 伪数组

  • 有长度有索引号的数组
  • 但是没有 pop() push() 等数组方法
  • 想要得到里面的每一个对象,则需要遍历(for)的方式获得

操作元素内容

innerText 属性

将文本内容添加/更新到任意标签位置
显示纯文本,不解析标签
<body>
 <div class="money">我会月薪过万</div>
<script>
    const money = document.querySelector('.money')  //先获取
    console.log(money.innerText)
    //我会月薪过万
    money.innerText = ('我会<strong>月薪过万</strong>')
</script>
</body>

innerHTML 属性

将文本内容添加/更新到任意标签位置
会解析标签,多标签建议使用模板字符

money.innerHTML = (`我会<strong>月薪过万</strong>`)

元素.innerText 属性 只识别文本,不能解析标签
  元素.innerHTML 属性 能识别文本,能够解析标签
最好选择innerHTML

操作元素属性

语法:

对象.属性 = 值

//1.获取元素

const pic = document.quertSelector('img')

//2.操作元素

pic.src = './images/01.ipj'
pic.title = '我的帅照'

操作元素样式属性

1.通过 style 属性操作CSS
对象.style.样式属性 = 值
    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: aqua;
        }
    </style>

<body>
    <div>你好,前端,我会努力的</div>
</body>

    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: aqua;
        }
    </style>

<body>
    <div>你好,前端,我会努力的</div>

<script>
    const div = document.querySelector('div')
    div.style.width = '200px'
    div.style.backgroundColor = 'pink'
</script>

</body>

注意:
1. 修改样式通过 style 属性引出
2. 如果属性有 - 连接符,需要转换为 小驼峰 命名法  如图中的 background-color
写成了 backgroundColor
3. 赋值的时候,需要的时候不要忘记加 css单位

2. 操作类名(className) 操作CSS

如果修改的样式比较多,直接通过style属性修改比较繁琐,我们可以通过借助于css类名的形式
语法: 元素.className = 'active'    active是 css的一个类名
    <style>
        div{
            width: 100px;
            height: 100px;
            background-color: aqua;
        }
       .active {
            width: 200px;
            height: 200px;
            background-color: pink;
            border: 1px solid black;
            font-size: 30px;
        }
    </style>

<body>
    <div>你好,前端,我会努力的</div>

<script>
    const div = document.querySelector('div')
    div.className = 'active'
</script>

</body>

好处:可以同时修改多个样式

           直接使用 className 赋值会覆盖以前的类名

3. 通过 classList 操作类控制CSS

为了解决className 容易覆盖以前的类名,我们可以通过classList方式追加和删除类名
//追加一个类
元素.classList.add('类名')
//删除一个类
元素.classList.remove('类名')
//切换一个类
元素.classList.toggle('类名')

操作表单元素 属性

课外知识:想要获取表单内容 用 input.value   不用    input.innerHTML

语法:表单.value = '用户名'     表单.type = 'password'

<body>
    <input type = 'text' value = '会赢吗'>
<script>
    //老规矩,先获取
    const uname = document.querySelector('input')
    //设置表单的值
    uname.type = 'password'
    uname.value = '一定会的'
</script>
</body>

先写到这,明天再继续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值