DOM练手讲解

先上代码,大家贴入看一下

1     <body>
2 
3         <select id="slc" size="7"></select>
4         <input type="submit" id="btn1" value="转换" />
5         <input type="text" id="text" />
6         <input type="button" id="btn2" value="移除" />
7 
8     </body>

CSS

 1         <style type="text/css">
 2             #slc {
 3                 /*float:left;*/
 4                 width: 500px;
 5                 height: 200px;
 6                 /*background-color:red;*/
 7                 border: 1px solid red;
 8             }
 9             
10             #btn1 {
11                 /*float:left;*/
12                 margin-left: 200px;
13                 margin-top: 80px;
14                 width: 100px;
15                 height: 40px;
16                 background-color: red;
17             }
18             
19             #text {
20                 /*float:left;*/
21                 margin-left: 200px;
22                 margin-top: 80px;
23                 width: 300px;
24                 height: 40px;
25             }
26             #btn2{
27                 margin-left: 200px;
28                 margin-top: 80px;
29                 width: 100px;
30                 height: 40px;
31                 background-color: red;
32             }
33             
34         </style>

JS

 1 <script>
 2     var x = document.getElementById("slc");
 3     var y = document.getElementById("btn1");
 4     var z = document.getElementById("text");
 5     var a = document.getElementById("btn2");
 6     y.onclick = function() {
 7         x.innerHTML += "<option>" + z.value + "</option>";
 8         //        x.value = z.value;
 9         z.value = "";
10     }
11     a.οnclick=function(){
12         x.removeChild(x.selectedOptions[0]);
13     }
14 </script>

左移效果图

点击转换后

点击移除后

 

 

OK   现在咱们开始讲解下这个功能

在很多的娱乐网站上注册账户的时候,会有一个爱好或者是巴拉巴拉选项让你选择,选择后点击某个按钮,实现左右互动互易的功能

那今天咱们就来用基本的DOM操作来实现这个功能

中间的CSS咱们就不讲了,属于前面的基础部分了

OK,简单的逻辑思维咱们一定要具备

首先咱们看到的红色边框,咱们第一时间想到的应该是<select></select>标记,里面放的是<option></option>

PASS:在这里一定要把前面HTML中的标记回忆起来,这个阶段结束后的项目,大家还会用得到,并且在以后的工作中也有可能用到,

      既然学过去,咱们就有必要去记住,并且去灵活的运用起来,就像打字时间久了不需要看键盘一样,

      不会用、用的不熟,这都是敲的不够多,

      在搬砖的过程中一定不要使用辅助工具,比如说软件上的提醒功能,

      练习的目的就是熟能生巧,切记!勿忘!!!

OK,左边各是一个select(在这里就用select代替<select></select>,下同),两个button,一个text

在这里咱们给四个标记设置属性一定别忘了id这个属性,

通过id咱们可以设置其样式,最关键的是咱们需要用id去取值

上面有全部的代码,咱们就这么手敲吧,看不懂的上翻

先来第一个select取值

var slc_1 = getElementById("id的值");

那么现在咱们定义的这个变量X就是变成了一个集合,因为select里面放的并不是一个数字或者是一个字符串,而是很多组

text、btn_1、btn_2同理,不去赘述

现在咱们开始用咱们的逻辑思维去想一下,点击转换按钮可以实现在text中输入的字符串移入到左边的select中

也就是说select.value等于text.value,那是不是text.value=" ";也就可以实现视觉上的消失?

实践是真理之母

咱们尝试一下便可以,答案是true

记然咱们说select中相当于一个数组,那咱们暂时先去尝试一下数组当中的[0],

其实这样是可以的,因为每次移入和移除都是只能选择一个,所以咱们没有必要再去给移入和移除再次定义一个数组,用[0]就可以,

所以这里的[0]就是咱们选中的那个字符串,这一点大家一定要理解清楚

至于option,还不知道什么意思或者是这行代码x.innerHTML += "<option>" + z.value + "</option>";还有不知道什么意思的,请前翻前面课本,还不知道的去度娘哪里回炉

咳咳,很简单的一个逻辑,分层剖析,确实很乏味

 

PASS:目前咱们接触的计算机语言就是用最直观有效的方式去进行人机沟通,从而为人进行更好的服务

    多去做一些尝试性的拓展或者是熟练性的练习,对代码的了解和编程认知可以有一个更好的提升

    当代码量和熟练度到了一定的程度,那对编程的认知和后期的学习都会有一个质的升华

    同样都是单身狗,没事儿多敲敲代码,多有意思的一件事,更何况敲代码得到的对象可比你千辛万苦追的对象要更符合你,哈哈

好了,今儿先到这里,板书的不是特别的清晰,这个题逻辑层面还有不懂的可以留言

咱们下期再见

 

转载于:https://www.cnblogs.com/TheJoker/p/7602118.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
GeoPandas是一个开源的Python库,旨在简化地理空间数据的处理和分析。它结合了Pandas和Shapely的能力,为Python用户提供了一个强大而灵活的工具来处理地理空间数据。以下是关于GeoPandas的详细介绍: 一、GeoPandas的基本概念 1. 定义 GeoPandas是建立在Pandas和Shapely之上的一个Python库,用于处理和分析地理空间数据。 它扩展了Pandas的DataFrame和Series数据结构,允许在其中存储和操作地理空间几何图形。 2. 核心数据结构 GeoDataFrame:GeoPandas的核心数据结构,是Pandas DataFrame的扩展。它包含一个或多个列,其中至少一列是几何列(geometry column),用于存储地理空间几何图形(如点、线、多边形等)。 GeoSeries:GeoPandas中的另一个重要数据结构,类似于Pandas的Series,但用于存储几何图形序列。 二、GeoPandas的功能特性 1. 读取和写入多种地理空间数据格式 GeoPandas支持读取和写入多种常见的地理空间数据格式,包括Shapefile、GeoJSON、PostGIS、KML等。这使得用户可以轻松地从各种数据源中加载地理空间数据,并将处理后的数据保存为所需的格式。 2. 地理空间几何图形的创建、编辑和分析 GeoPandas允许用户创建、编辑和分析地理空间几何图形,包括点、线、多边形等。它提供了丰富的空间操作函数,如缓冲区分析、交集、并集、差集等,使得用户可以方便地进行地理空间数据分析。 3. 数据可视化 GeoPandas内置了数据可视化功能,可以绘制地理空间数据的地图。用户可以使用matplotlib等库来进一步定制地图的样式和布局。 4. 空间连接和空间索引 GeoPandas支持空间连接操作,可以将两个GeoDataFrame按照空间关系(如相交、包含等)进行连接。此外,它还支持空间索引,可以提高地理空间数据查询的效率。
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值