python_way day16 JavaScirpt(re)、 DOM 、 jQuery、

 

Python_way day16

1、Dom  (找到html中的标签)

2、Javascirpt(正则)

3、jQuery(1.10,1.12-兼容性好,2.0。以后放弃了ie9以下)

    - 封装了Dom & JavaScript


一、DOM

1、查找元素

  • 直接查找
document.getElementById             根据ID获取一个标签                  --->这里是获取一个标签中间没有s
document.getElementsByName          根据name属性获取标签集合          
document.getElementsByClassName     根据class属性获取标签集合/ 兼容性不太好   ----> 这些都是获取多个标签中间有s
document.getElementsByTagName       根据标签名获取标签集合
  • 间接查找
parentNode          // 父节点
childNodes          // 所有子节点
firstChild          // 第一个子节点
lastChild           // 最后一个子节点
nextSibling         // 下一个兄弟节点
previousSibling     // 上一个兄弟节点#以上的nodes既包含标签,也包含文本内容

parentElement           // 父节点标签元素
children                // 所有子标签
firstElementChild       // 第一个子标签元素
lastElementChild        // 最后一个子标签元素
nextElementtSibling     // 下一个兄弟标签元素
previousElementSibling  // 上一个兄弟标签元素只包含标签

 直接查找:

Nodes包含了所有子节点。

2、操作

a、获取和修改

  • 对于有值的标签使用value获取或者设置
t = document.getElementById("i2")
<div id=?"i2">?…?</div>?

t.children
[<input type=?"text">?]
text = t.children[0]
<input type=?"text">?
text.value
""
text.value     //获取当前input框中输入的值
"123"
text.value = 345  //设置input框中的值
345
  • 对于没有值的但是有文本内容的比如a标签

    使用innetText或者innerHTML这两个标签

innetText

t = document.getElementById("i3")
<a id=?"i3" href=?"http:?/?/?www.baidu.com">?百度?</a>?
t.innerText   //获取a标签中的内容
"百度"
t.innerText = "是百度"    //设置a标签中的内容,让其在页面上变化
"是百度"

innerHTML

<a id="i3" href="http://www.baidu.com">百<span>666</span>度</a>
t = document.getElementById("i3")
<a id=?"i3" href=?"http:?/?/?www.baidu.com">?…?</a>?
t.innerText
"百666度"
t.innerHTML
"百<span>666</span>度"    HTML会将文本中的所有标签都拿到

实例一:搜索框中的文字

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>搜索框文字消失</title>
</head>
<body>
    <input id="i1" type="text" value="请输入搜索内容" onfocus="Focus();" onblur="Blur()"/>            //onfocus:获取鼠标点击时的动作,  onblur:获取鼠标移除时的动作
    <script type="text/javascript">
        function Focus() {
            var tag = document.getElementById("i1");      //获取id=i1的标签
            if(tag.value=="请输入搜索内容"){            //如果这个表亲的内容是请输入请输入搜索内容,一点就清空,否则就不管
                 tag.value = "";
            }
        }
        function Blur() {
            var tag = document.getElementById("i1");          
            var tag_value = tag.value;
            if (tag_value.trim().length==0){          //如果搜索框去空格后的长度是0,就证明用户没有输入,那么就将内容恢复
                tag.value = "请输入搜索内容";
            }
        }
    </script>
</body>
</html>

  

b、class操作

className                // 获取所有类名
classList.remove(cls)    // 删除指定类
classList.add(cls)       // 添加类

实例二:摸态对话框  

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>莫泰对话框</title>    <style>        .hide{            display: none !important;            /*定义一个display = none的标签,让后面使用*/        }

        .b{            position: fixed;            top: 0;            left: 0;            right: 0;            bottom: 0;            background-color: rgba(0,0,0,.6);            z-index: 9;        }

.modal{    height: 200px;    width: 400px;    background-color: lightskyblue;    position: fixed;    z-index: 10;    left: 50%;    top: 50%;    margin-left: -200px;    margin-top: -100px;

}

.out_input{    margin-left: 98px;    height: 100px;    margin-top: 10px;}

.d_input{    display: inline-block;    width: 173px;    height: 21px;    margin-top: 10px;}

.login_back{    height: 50px;    width: 204px;    background-color: dodgerblue;    margin: 0 auto;    text-align: center;    line-height:50px;    border: 1px darkblue solid;}

input{    width: 200px;    height: 30px;}

.login_icon{    top: 16px;    left: 68px;    float: inherit;}

.modal_in{    height: 30px;    width: 100px;    float:right;}    </style></head><body>    <input class="reg" type="button" value="登陆" onclick="ShowModal();">    <!--一旦点击这个button按钮,onclick,就触发showmodal这个js函数-->    <div id ="black" class="b hide"></div>    <!--让背景这个样式使用两个类属性,一个是颜色,布局,一个就是隐藏,现不显示出来-->    <div id ="mod" class="modal hide">    <!--让中间整个的这个模块使用两个类属性,一个是颜色,布局,一个就是隐藏,现不显示出来-->        <div class="login_back">            <span class="login_icon">                账户登陆            </span>        </div>        <div class="out_input">            <input type="text"/>            <span class="input_imp"></span>            <span class="d_input">                <input type="text" class="input_d"/>                <span class="input_imp"></span>            </span>        </div>

        <button class="modal_in" onclick="HideModal();">返回</button>        <!--一旦点击这个button按钮,onclick,就触发HideModal这个js函数-->    </div>    <script>        function ShowModal() {            var t1 = document.getElementById("black");            var t2 = document.getElementById("mod");            //<div id="black" class="b"></div>            //<div id="mod" class="modal"></div>            t1.classList.remove("hide");   //移除tag1这个list中的class:hide            t2.classList.remove("hide");   //移除tag2这个list中的class: hide        }        function HideModal() {            var t1 = document.getElementById("black");            var t2 = document.getElementById("mod");            //<div id="black" class="b hide"></div>            //<div id="mod" class="modal hide"></div>            t1.classList.add("hide");   //移除tag1这个list中的class:hide            t2.classList.add("hide");   //移除tag2这个list中的class: hide        }    </script></body></html>

小知识点:

<a href="javascript:void (0)">取消</a>    //表示这个a标签什么都不做

  

时间: 2024-08-07 21:18:01

python_way day16 JavaScirpt(re)、 DOM 、 jQuery、的相关文章

DOM(十)使用DOM设置单选按钮、复选框、下拉菜单

1.设置单选按钮 单选按钮在表单中即<input type="radio" />它是一组供用户选择的对象,但每次只能选一个.每一个都有checked属性,当一项选择为ture时,其它的都变为false. 先贴沙漠化一个例子: <script type="text/javascript"> function getChoice() { var oForm = document.forms["uForm1"]; var aCh

初探JavaScript(一)——也谈元素节点、属性节点、文本节点

Javascript大行其道的时候,怎么能少了我来凑凑热闹^_^ 基本上自己对于js的知识储备很少,先前有用过JQuery实现一些简单功能,要论起JS的前世今生,来龙去脉,我就一小白.抱起一本<Javascript Dom编程艺术>,开始慢慢走近JS,与它套近乎,今天是第三天了,从目前来看,比较好相处.就此动笔,是一个回忆复习的过程,权当是自己的一份读书笔记. JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型,已经被广泛用于Web应用开发,常用来为网

ExtJs4学习(二):Dom文档操作

现在主流的JS框架要数ExtJs和JQuery应用的比较广泛.JQuery属于轻量级的,一般做网站应用比较常见,可见块头小的优势.ExtJs比较庞大,它除了对基本的JS语法和HTML DOM操作方式的封装之外,还提供了一套强大的UI库.在企业级B/S解决方案应用上独占优势.就单说它在原生JS的封装,DOM操作方式封装方面也足以藐视JQuery.下面我就通过对比API,体现两种框架的异曲同工之处.我们已JQuery API为主线,来看看ExtJs是否有替代的方案. 注意一点:ExtJs4.0相对上

javascript进击(四)HTML DOM

HTML DOM (文档对象模型) 什么是DOM? DOM 是 W3C(万维网联盟)的标准. DOM 定义了访问 HTML 和 XML 文档的标准. W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容.结构和样式. W3C DOM 标准被分为 3 个不同的部分: 核心 DOM - 针对任何结构化文档的标准模型 XML DOM - 针对 XML 文档的标准模型 HTML DOM - 针对 HTML 文档的标准模型 访问浏览器,加载网页的同时,浏览

(转)从内存管 理、内存泄漏、内存回收探讨C++内存管理

http://www.cr173.com/html/18898_all.html 内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对 C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃 C++,转到Java或者.NET,他们的内存管理基本是自动的,当然你也放弃了自由和对内存的支配权,还放弃了C++超绝的性能

ASP.Net MVC开发基础学习笔记(3):Razor视图引擎、控制器与路由机制学习

首页 头条 文章 频道                         设计频道 Web前端 Python开发 Java技术 Android应用 iOS应用 资源 小组 相亲 频道 首页 头条 文章 小组 相亲 资源 设计 前端 Python Java 安卓 iOS 登录 注册 首页 最新文章 经典回顾 开发 Web前端 Python Android iOS Java C/C++ PHP .NET Ruby Go 设计 UI设计 网页设计 交互设计 用户体验 设计教程 设计职场 极客 IT技术

如何解决群聊(MUC)聊天室重复存储、接收自己发送的消息的问题

CHENYILONG Blog 如何#解决方案#群聊(MUC)聊天室重复存储.接收自己发送的消息 编号 项目 描述 1 问题描述 单聊没问题,群聊会出现自动回复的问题 数据库中存储的数据出现的问题 界面上出现的问题:类似自动回复.回音壁一样一模一样地回答.  2 问题产生的原因 3 群聊基本的原理示意图 聊天内容的显示是经由从数据库进行的读取排序, 4 #解决方案# 拦截阻挡红色区域的执行  5 失败的尝试:尝试但是没有效果的方法 // AppDelegate.m中#pragma 接收消息代理监

C++ Primer 学习笔记_34_面向对象编程(5)--虚函数与多态(二):纯虚函数、抽象类、虚析构函数、动态创建对象

C++ Primer 学习笔记_34_面向对象编程(5)--虚函数与多态(二):纯虚函数.抽象类.虚析构函数.动态创建对象 一.纯虚函数 1.虚函数是实现多态性的前提 需要在基类中定义共同的接口 接口要定义为虚函数 2.如果基类的接口没办法实现怎么办? 如形状类Shape 解决方法 将这些接口定义为纯虚函数 3.在基类中不能给出有意义的虚函数定义,这时可以把它声明成纯虚函数,把它的定义留给派生类来做 4.定义纯虚函数: class <类名> { virtual <类型> <函

自己动手写CPU之第九阶段(8)——MIPS32中的LL、SC指令说明

将陆续上传新书<自己动手写CPU>,今天是第47篇. 9.7 ll.sc指令实现思路 9.7.1 实现思路 这2条指令都涉及到访问链接状态位LLbit,可以将LLbit当做寄存器处理,ll指令需要写该寄存器,sc指令需要读该寄存器,同时,与对通用寄存器的访问一样,对LLbit寄存器的写操作也放在回写阶段进行. ll指令在访存阶段要读取数据存储器中指定地址的数据,还要设置对LLbit寄存器的写操作,写入的值为1,这个写操作会通过MEM/WB模块传递到回写阶段,最终实现对LLbit寄存器的写. s