美文网首页
DOM 1. 操作元素

DOM 1. 操作元素

作者: goodcwj | 来源:发表于2020-03-28 18:03 被阅读0次

    黑马学习笔记

    元素选择

    • 老的方式
      document.getElementByXXX
      返回元素数组
    • 新的方式
      直接传入selector。 这里的selector是CSS的tag, className, id等selector。
      document.querySelector('selector')
      返回第一个元素
      document.querySelectorAll('selector')
      返回满足条件的数组

    事件

    1. onblur, onfocus 失去焦点,获得焦点
    2. 鼠标经过 onmouseover, 鼠标离开onmouseout

    element.onclick = function(){} function里面的this是element

    操作元素

    1. 操作元素内容
    • innerText, innerHTML改变元素内容
    1. 操作常见元素属性
    • src, href
    1. 操作表单元素属性
    • id, alt, title
    1. 操作元素样式属性
    • style操作
    • display: none, block
    • background, background-position( 精灵图示例)
    • element.className='first second'
    • 通过修改className进行多样式调整
    • 多className, second里面的样式覆盖fist中的重复的样式
    1. 自定义属性的操作
      目的是保存并使用数据,有些数据可以保存到页面中而不用保存到数据库中
    • element.属性, element.属性= 值
      获取内置属性
    • element.getAttribute('属性'), element.setAttribute('属性', '值')
      获取用户自定义属性,当然它也可以获取内置属性
    • 对于class属性,使用的是class而不是className
    • removeAttribute
      element.removeAttribute('属性')
    1. H5自定义属性

    H5规定自定义属性data-开头作为属性名并且赋值
    <div data-index='20'/>

    1. 兼容性获取element.getAttribute('data-index')
    2. H5新增element.dataset.index或者element.dataset['index']
    3. 驼峰命名法,如果自定义为'data-list-name', 则使用element.dataset.listName来获得'data-list-name'
    • elemnet.innerText
      从起始位置到终止位置的内容,但它去除html标签,同时空格换行也去掉
    • element.innerHTML
      起始位置到终止位置的全部内容,包括html标签,同事保留空格和换行

    innerHTML是W3C标准,innerText是IE发起的,老版本的火狐不支持
    innerText和innerHTML都是可读可写
    innerHTML用的较多

    元素属性

    • alt属性
      The required alt attribute specifies an alternate text for an image, if the image cannot be displayed.

    表单元素的属性操作

    利用DOM可以操作如下表单元素的属性

    type, value, checked, selected, disabled
    
    1. 表单里面的内容是通过修改value来改变的
      示例
    <form action="/action_page.php">
      <label for="fname">First name:</label>
      <input type="text" id="fname" name="fname"><br><br>
      <label for="lname">Last name:</label>
      <input type="text" id="lname" name="lname"><br><br>
      <input type="submit" value="Submit">
    </form>
    

    样式属性操作

    1. element.style 行内样式操作
    2. element.className 类名样式操作

    注意

    1. \color{red}{JS里面的样式采取**驼峰**命名法 比如fontSize, backgroundColor}
    2. \color{red}{JS修改style样式操作,产生的是行内样式,CSS权重比较高}

    示例

    <html>
    <head>
    <style>
        div{
            width: 200px;
            height: 200px;
            background-color: pink;
       }
    </style>
    </head>
    <body>
    <div/>
    <script>
    var div = document.querySelector('div');
    div.onclick=function(){
    this.style.backgroundColor = 'purple';
    this.style.width='250px';
    }
    </script>
    </body>
    
    

    相关文章

      网友评论

          本文标题:DOM 1. 操作元素

          本文链接:https://www.haomeiwen.com/subject/fersuhtx.html