js 表格、表单、元素尺寸和位置

复习

  • DOM : document object model
  • DOM节点关系属性
    • childNodes 元素\注释\文本
    • children 元素
    • firstChild 第一个子节点
    • firstElementchild 第一个元素子节点
    • lastChild
    • lastElementChild
    • parentNode
    • offsetParent
    • previousSibling
    • previousElementSibling
    • nextSibling
    • nextElementSibling
  • 节点增删改,复制
    • document.createElement(‘li‘);
    • parent.appendChild( newNode );
    • oldNode.parentNode.insertBefore(newNode,oldNode);
    • oldNode.parentNode.replaceChild(newNode,oldNode);
    • delNode.parentNode.removeChild(delNode);
    • delNode.remove();
    • Node.cloneNode(true);
  • 获取元素方法
    • document.getElementById();
    • document.getElementsByTagName(‘div‘);
    • document.getElementsByClassName(‘red‘); //ie低版本不兼容
    • document.querySelector(‘ul li .red‘);
    • document.querySelectorAll(‘ul li .red‘); //[]

(一) 表格操作

  • 获取表格

    • 通过id名或标签名 table
  • 获取表头
    • table.tHead
  • 获取表格主体
    • table.tBodies --> [tbody,tbody]
  • 获取表格底部
    • table.tFoot
  • 获取表格行
    • table.tHead.rows --> [tr,tr]
    • table.tBodies[0].rows --> [tr,tr]
    • table.tFoot.rows --> [tr,tr]
  • 获取单元格
    • table.tHead.rows[0].cells --> [th,th]
    • table.tBodies[0].rows[0].cells --> [td,td]
    • table.tFoot.rows[0].cells --> [td,td]

(二) 属性操作

- getAttribute(attr)  获取标签属性(内置,自定义)
- setAttribute(attr,val)  设置标签属性(内置,自定义),自定义属性会显示在标签上
 * 以上两种方式通常用来操作自定属性
- ele.attr   通常用来设置内属性,也可以设置自定义属性,这种方式设置的自定义属性不会显示在标签上

(三) 表单

  • 获取表单元素可以通过 form.name属性值

        <form action="" id="form1">
            <input type="text" name="user">
            <input type="text" name="pass">
            <input type="radio" name="sex">
            <input type="radio" name="sex">
        </form>
    
        js:
            var form1 = document.getElementById(‘form1‘);
            console.log(form1.user);  // input
            console.log(form1.pass);  //input
            console.log(form1.sex);   //[input,input]
    
  • 输入框事件及方法
    • 获得焦点事件

      • onfocus
    • 失去焦点事件
      • onblur
    • 获得焦点方法
      • focus()
    • 失去焦点方法
      • blur()
  • 表单域事件及方法
    • 表单提交事件

      • onsubmit
          form.onsubmit = function(){
              return false; //阻止表单提交
          }
      
    • 表单重置事件
      • onreset
         form.onreset = function(){
             return false; //阻止表单重置
         }
      
    • 表单提交方法
      • submit()
    • 表单重置方法
      • reset()

(四) 元素的尺寸和位置

  • 1-client系列

    • clientWidth //宽度+左右padding
    • clientHeight //高度+上下padding
    • clientTop //上边框宽度
    • clientLeft //左边框宽度
    • document.documentElement.clientWidth 可视区宽度
    • document.documentElement.clientHeight 可视区高度
  • 2-offset系列
    • offsetWidth //宽度+左右padding + 左右border
    • offsetHeight //高度+上下padding + 上下border
    • offsetTop // 距离定位父级顶部的位移
    • offsetLeft // 距离定位父级左边的位移
  • 3-scroll系列
    • scrollWidth //元素实际内容宽度
    • scrollHeight //元素实际内容高度
    • scrollTop //滚动的元素顶部卷去的高度
    • scrollLeft //滚动的元素左边卷去的宽度
  • 4- 文档滚动高度的问题
  • document.body body元素
  • document.documentELement html元素
  • 获取页面卷去高度,有兼容问题
        //获取页面卷去高度兼容写法
        var st = document.documentElement.scrollTop || document.body.scrollTop;  
    
        //兼容所有浏览器的页面滚动事件写法
            window.onscroll = function(){
                ...
            }
    
  • 变量名不能使用top,top指向顶层对象(window)

原文地址:https://www.cnblogs.com/didamehulayou/p/11140085.html

时间: 2024-08-01 14:17:14

js 表格、表单、元素尺寸和位置的相关文章

JS基础-表单元素-新表单元素-js概述

1.表单元素 1.input元素 1.隐藏域和文件选项框 1.隐藏域 <input type="hidden"> 要提交给服务器的数据,但是不想展示给用户看可以放在隐藏域中. 2.文件选择框 <input type="file"> 注意: 1.method属性的值必须为post 2.enctype属性的值必须为multipart/form-data 2.textarea元素 1.作用 允许输入多行数据的文本框. 2.语法 标记:<tex

表格Table和表单元素

1.相对路径与绝对路径 绝对路径 指带域名的文件的完整路径和磁盘中指定文件的全部路径 网址(网站的尾部)–a标签用的比较多 <img src="D:/2019/9/1.jpg" > <a href="http://www.baidu.com">百度一下</a> 相对路径 是指在同一个文件夹下,通过一个参考点来找到其他文件 返回上一级 ../ 同级之间直接写文件名 下一级用 / 2.标签的嵌套规范 1.块元素可以包含内联元素或某些块

【转载】[JS]让表单提交返回后保持在原来提交的位置上

有时候,在网页中点击了页面中的按钮或是刷新了页面后,页面滚动条又 会回到顶部,想看后面的记录就又要拖动滚动条,或者要按翻页键,非常不方便,想在提交页面或者在页面刷新的时候仍然保持滚动条的位置不变,最好的办法就是 在JS中用cookie记录下当前滚动条的位置,然后刷新时读取cookie就可以实现这个功能了.代码如下:<script type="text/javascript"> function Trim(strValue) { //return strValue.repla

js动态控制表单表格

js动态控制表单表格,这里操作只讲,添加一行,删除一行,删除某一行某一列. 直接放代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <table id="tabl" border=1 cellpadding=10 cellspacing=0&

Ajax中通过JS代码自动获取表单元素值的示例代码

我们在使用Ajax的时候,通常需要获取表单元素值,然后发送给后台的服务器端程序处理.如果表单元素不多的情况我们常常会通过GET方式来获取表单元素值,但如果表单元素非常多,此时就需要用POST方式来获取表单元素值,那么如何来获取表单元素值呢?下面给出一段JS代码即可自动获取表单元素的值了 http://www.qidian.com/BookReader/1839917,60421843.aspx http://www.qidian.com/BookReader/1839917,60422045.a

Ember.js 入门指南——表单元素

文章从(http://ibeginner.sinaapp.com)迁移过来,欢迎访问原页面. Ember提供的表单元素都是经过封装的,封装成了view组件.经过解析渲染之后就会生成普通的HTML标签.更多详细信息你可以查看他们的实现源码:Ember.TextField.Ember.Chechbox.Ember.TextArea. 按照惯例,先创建一个route:ember generate route form-helper. 1,input助手 {{! //app/templates/form

form表单 无法提交js动态添加的表单元素问题。。

第一种情况, 这种情况js动态添加的表单元素是不能提交到服务器端的 <table> <form method="post" action=" url  "> <tr><td></td><td></td></tr> <tr><td></td><td></td></tr> </form> &l

在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串

//封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts = document.getElementById(formid).getElementsByTagName('input'); for (var i = 0; i < ipts.length; i++) { if (ipts[i].type=='text') { if (ipts[i].name)

表单元素和表格

今天尝试去自己做表格,试了一下单元格合并,通过尝试我发现如果规定了高度在合并,那么删除后的表格高度为初始高度,如果想要改变只能改变删除之后剩余的单元格高度 <tr> <td rowspan="2" > </td> <td height="50"> </td> <td> </td> </tr> 而在同一个单元格我没有实现行与列的合并 <table width=&quo