zoukankan      html  css  js  c++  java
  • DOM jquery

    DOM  文档对象模型(Document Object Model)是一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。我们最为关心的是,DOM把网页和脚本以及其他的编程语言联系了起来。DOM属于浏览器,而不是JavaScript语言规范里的规定的核心内容。

    一、查找元素

    1、直接查找

    xxxxElementsxxx(表示所有的,找到的元素会放到一个数组中)

    document.getElementById           根据ID获取一个标签

    document.getElementsByName         根据name属性获取标签集合
    document.getElementsByClassName     根据class属性获取标签集合
    document.getElementsByTagName       根据标签名获取标签集合

    2、间接查找

    查找标签的同时把其下的文本内容也找出

    parentNode          // 父节点

    childNodes          // 所有子节点
    firstChild          // 第一个子节点
    lastChild           // 最后一个子节点
    nextSibling         // 下一个兄弟节点
    previousSibling     // 上一个兄弟节点<br>
    我们可以通过xxx.childNodes(其他的同理).nodeType[x]判断我们得到的是文本还是标签
    xxx.childNodes(其他的同理)[x].nodeType = 1 标签
    xxx.childNodes(其他的同理)[x].nodeType = 3 文本
    只是查找标签,不包括文本内容
    parentElement           // 父节点标签元素
    children                // 所有子标签
    firstElementChild       // 第一个子标签元素
    lastElementChild        // 最后一个子标签元素
    nextElementtSibling     // 下一个兄弟标签元素
    previousElementSibling  // 上一个兄弟标签元素

    二、操作

    1、内容

    innerText   文本

    outerText
    innerHTML   HTML内容
    innerHTML  
    value       值
     (用于获取普通标签中间的内容)
    <body>
        <div id="d1">老男孩<span>666</span></div>
    <script>
        ret = document.getElementById("d1");
        console.log(ret.innerText);//--------->老男孩666
        console.log(ret.innerHTML);//--------->老男孩<span>666</span>
    </script>
    </body>
     (获取input标签和下拉标签中value值)
    <body>
        <input id="d1" type="text">
        <select id="d2">
            <option value="1">上海</option>
            <option value="2">北京</option>
        </select>
    <script>
        ret1 = document.getElementById("d1");
        ret2= document.getElementById("d2");
        console.log(ret1.value); //--------获取你输入的内容
        console.log(ret2.value); //--------获取你选择项的value值
    </script>
    2、属性
    attributes                // 获取所有标签属性
    setAttribute(key,value)   // 设置标签属性
    getAttribute(key)         // 获取指定标签属性
    3、class操作
    className                // 获取所有类名
    classList.remove(cls)    // 删除指定类
    classList.add(cls)       // 添加类
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            .hide{
                display: none;
            }
            .c1{
                position: fixed;
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                background:rgba(0,0,0,.6) ;
                z-index: 2;
            }
            .c2{
                position: fixed;
                width: 400px;
                height: 300px;
                top: 50%;
                left: 50%;
                background-color: white;
                z-index: 3;
                margin-top: -150px;
                margin-left: -200px;
            }
        </style>
    </head>
    <body>
        <div>
            <table>
                <tr>
                    <td>1</td>
                    <td>1</td>
                    <td><input type="button" value="点我" onclick="show()"></td>
                </tr>
            </table>
        </div>
        <div id="show" class="c1 hide" ></div>
        <div id="hide" class="c2 hide">
            用户名:<input type="text">
            密码:<input type="password">
            <input  type="button" value="确定" onclick="a()">
            <input   type="button" value="取消" onclick="a()">
        </div>
        <script>
    
            function show() {
                document.getElementById("show").classList.remove("hide");
                document.getElementById("hide").classList.remove("hide");
            }
            function a() {
                document.getElementById("show").classList.add("hide");
                document.getElementById("hide").classList.add("hide");
            }
        </script>
    </body>
    </html>
    
    模态对话框实例

    更多引用  https://www.cnblogs.com/luxiaojun/p/5651681.html

    jQuery 学习

    jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)。

    jQuery基础

    1、代码风格

    在jQuery程序中,都是以美元符号“$”来起始的,而“$”就是jQuery中最重要且独有的对象:jQuery对象

    $(function (){});                 //执行一个匿名函数
    $("#box");                       //对id="box"的标签选择
    $("#box").css("color","red");   //执行功能函数

    2、代码位置

    将写的jquery代码放到html中head标签里,必须把代码放到匿名函数中(DOM执行完后执行)

    将写的jquery代码放到html中body标签最下面.

    选择器

    基本语法:$(selector).action()

    1、基本选择器

    1>elememt--------------->根据给定的元素标签名匹配所有元素---------------------->$("div")
     
    2>#id--------------------->根据给定的ID匹配一个元素-------------------------->$("#id")
     
    3>.class------------------>根据给定的css类名匹配元素------------------------->$(".class")
     
    4>*----------------------->匹配所有元素------------------------------------->$("*")

    2、层级选择器

    1>selector1,selectorN------>匹配多个标签------------------------------>$("div,span")
     
    2>ancestor descendant------>给定元素下所有的后代元素(儿子以及孙子)------->$("div  span")
     
    3>parent > child----------->给定元素下所有的子代元素(只能是儿子)-------->$("div>span")
     
    4>pren+next---------------->匹配所有跟在 选定标签后面的一个指定元素-------->$("div+span")(只能是他后面的一个)
     
    5>prev ~ siblings---------->匹配 prev 元素之后的所有 siblings 元素------->$("div~span")(只能是之后的所有兄弟元素,他前面的匹配不到)

    3、基本筛选器

    1>:first--->获取配到所有元素的第一个元素------------->$("li:first")
     
    2>:last---->获取配到所有元素的第后一个元素------------>$("li:last")
     
    3>:not(selector)--->去除所有与给定选择器匹配的元素------>$("input:not(:checked)")
     
    4>:even---->匹配所有索引值为偶数的元素,从0开始计数----------->$("li:even")
     
    5>:odd---->匹配所有索引值为偶数的元素,从0开始计数----------->$("li:odd")
     
    6>:eq(index)--->匹配一个给定索引值的元素------------------------>$("li:eq(3)")
     
    7>:gt(index)----------->匹配所有大于给定索引值的元素--------------------->$("li:gt(3)")
     
    8>:lt(index)----------->匹配所有小于给定索引值的元素--------------------->$("li:lt(3)")
     
    9>:header-------------->匹配如 h1, h2, h3之类的标题元素----------------->$(":header")
     
    10>:contains(text)----->匹配包含给定文本的元素-------------------------->$("div:contains('join')")(匹配一个文本内容为join的div标签)
     
    11>:empty-------------->匹配所有不包含子元素或者文本的空元素--------------->$("li:empty")
     
    12>:parent------------->匹配所有包含子元素或者文本的元素------------------>$("li:parent ")
     
    13>:hidden------------->匹配所有不可见元素,或者type为hidden的元素-------->$("div:hidden")
     
    14>:visible------------>匹配所有的可见元素------------------------------>$("div:visable")

    4 、属性选择器    

    1>[attribute]----------->匹配包含给定属性的元素----------------------------->$("div[id]")
     
    2>[attribute=value]----->匹配给定的属性是某个特定值的元素-------------------->$("div[id='l1']")(注意这里id = 'xx'要用单引号)
     
    3>[attribute^=value]---->匹配给定的属性是以某些值开始的元素------------------->$("div[id^='l1']")(id相同,属性值必须以xxx开头)
     
    4>[attribute$=value]---->匹配给定的属性是以某些值结尾的元素------------------->$("div[id$='l1']")
     
    5>[attribute!=value]---->匹配所有不含有指定的属性,或者属性不等于特定值的元素----->$("div[id!='l1']")
     
    6>[attribute*=value]---->匹配给定的属性中包含某些值的元素--------------------->$("div[id*='l1']")(表示属性值中包含li部分)

    5、 表单选择器

    $("[type='text']")-------->$(":text")           注意只适用于input标签

    <form>
      <input type="text" />
      <input type="checkbox" />
      <input type="radio" />
      <input type="image" />
      <input type="file" />
      <input type="submit" />
      <input type="reset" />
      <input type="password" />
      <input type="button" />
      <select><option/></select>
      <textarea></textarea>
      <button></button>
    </form>

     筛选器

    1> eq(index|-index)------------->获取当前链式操作中第N个jQuery对象----------------------------->$("li").eq(1)(当参数大于等于0时为正向选取,当参数为负数时为反向选取)
     
    2> first()---------------------->获取第一个元素---------------------------------------------->$("li").first()
     
    3> last()----------------------->获取最后一个元素-------------------------------------------->$("li").last()
     
    4> filter(expr|obj|ele|fn)------>筛选出与指定表达式匹配的元素集合------------------------------->$("div").filter(".c1")(保留带有c1属性值类的元素)
     
    5> children([expr])------------->一个元素的所有子元素的元素集合-------------------------------->$("div").children()(匹配所有div的子元素)
     
    6> find(expr|obj|ele)---------->在父标签下寻找子标签------------------------>$("div").find("span")(从所有的段落开始,进一步搜索下面的span元素。与$("p span")相同)
     
    7> next([expr])---------------->匹配的元素后面紧邻的一个同辈元素------------------------------->$("div").next()
     
    8> nextAll([expr])------------->查找当前元素之后所有的同辈元素--------------------------------->$("div").nextAll()(括号中是用来过滤的表达式)
     
    9> nextUntil([exp|ele][,fil])-->查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止---------->$("div").nextUntil("xxx")(不算开头和结尾)
     
    10>prev([expr])---------------->匹配的元素前面紧邻的一个同辈元素-------------------------------->$(".c3").prev()
     
    11>prevAll([expr])--------->查找当前元素之前所有的同辈元素-------------------------------------->$(".c3").prevAll()
     
    12>prevUntil([exp|ele][,fil])->查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止-->$("div").prevUntil("xxx")(不算开头和结尾)
     
    13>parent([expr])-------->匹配元素的唯一父元素的元素集合------------------------------------------->$(".c1").parent()
     
    14>parents([expr])---------->匹配元素的祖先元素的元素集合----------------------------------------->$(".c1").parent()(匹配元素的父级,爷级.....最后是body和HTML)
     
    15>parentsUntil([expr|element][,filter])----查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止---->$(".c1").parentsUntil(".c4")
     
    16>siblings([expr])--------->匹配所有同辈标签(不算自己)------------------------------------------->$("div").siblings()

    更多引用 https://www.cnblogs.com/luxiaojun/p/5668210.html

      

  • 相关阅读:
    C# 视频监控系列:学习地址汇总
    【转】C# 视频监控系列(13):H264播放器——控制播放和截图
    【转】C# 视频监控系列(12):H264播放器——播放录像文件
    【转】C#播放H264裸码流
    采集音频和摄像头视频并实时H264编码及AAC编码
    IntelliJ-IDEA和Git、GitHub、Gitlab的使用
    退出app 退出应用程序
    Android Service+Socket 联网交互
    Android 对话框(Dialog)大全 建立你自己的对话框
    canvas.drawBitmap(bitmap, src, dst, paint)
  • 原文地址:https://www.cnblogs.com/zhangchen-sx/p/10261306.html
Copyright © 2011-2022 走看看