毕向东HTML_CSS_JavaScript教程笔记.doc_第1页
毕向东HTML_CSS_JavaScript教程笔记.doc_第2页
毕向东HTML_CSS_JavaScript教程笔记.doc_第3页
毕向东HTML_CSS_JavaScript教程笔记.doc_第4页
毕向东HTML_CSS_JavaScript教程笔记.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

HTMLHTML:(Hype Text Markup Language)超文本标记语言,是最基本的网页语言。代码由标签组成,不区分大小写。由开始,结束,分头部分(head)和体部分(body),头部分用于给页面增加一些辅助或属性信息,最先加载。体部分是真正存放页面数据的地方。属性和属性值用“=”连接,属性值可加双引号、单引号或不加引号。标签相当于一个容器,数据存放在容器里,对数据操作,就是在修改容器的属性值。字体标签:文字color属性可用颜色单词,也可用“#FFFFFF”:井号加十六进制数据表示,红绿蓝标题标签:文字 共有6级标题 水平线标签:size属性指定水平线粗细特殊符号:大于号小于号与符号&双引号”空格注册符版权符TM符<>&" ®©™列表和项目符号标签:定义列表 数字标签 符号标签 定义列表DefinedList定义项目 具体项目 具体项目自动缩进效果具体项目内容用封装 自动缩进默认数字样式 可用type修改:a A I i 1 Start属性指定起始号码默认样式空心圆circle disc实心圆 square黑方块可用CSS自定义符号注释标签:图像标签:src属性中可用两个点(./)代表上层目录alt属性中的说明文字在鼠标悬停和图片加载失败时显示图像地图:用封装好图像后,切换到DW设计视图,在属性中选择热点区域形状并在图像上拖动出一块热点区域,用热点区域链接某个资源。在页面中点击热点区域就会跳转到相应资源。表格标签:cellspacing=0两线并成一线但显示出来粗,用CSS中border-collapse两线重叠看起来就是一条线标签内给表格加标题,是表格的一部分行占两列列占两行 第一行第一个单元格第一行第二个第二行只有一个table标签中默认都有一个tbody标签 thead、tbody、tfoot浏览页面时,浏览器解析由table标签封装的页面数据时,读到表格结束标记才会显示数据,若封装页面数据的表格很大,没读到结束标记就不显示任何数据,用户体验不佳,所以将表格分为多个部分,读一个就显示一部分。用tbody将表格分体超链接标签:文字点击一个超链接做了什么?首先启动相应的协议解析引擎,访问本机hosts文件,查找对应主机IP,未找到再请求网络DNS服务器获取对应IP,用IP访问指定主机。href属性,可以指定协议,mailto:?subject=”邮件主题”&cc=”抄送地址”mailtothunder 不指定协议默认启动文件协议解析href=默认使用file协议打开的是一个本地文件 并不是主机地址超链接实现页面内跳转:定位标记、锚顶部位置 用a标签的name属性为当前位置指定一个名字,不使用href属性很多页面内容 在适当位置用a标签链接到指定名字的位置 用#标示当前页面回到顶部位置target属性指定页面打开方式,默认在当前页面内打开,_blank新窗口打开title属性:当鼠标悬停在文字上时显示的文字内容表单标签:用于与服务端交互form标签内的组件:input接收用户输入数据 select下拉列表 textarea文本区域input标签内要指定name属性,服务端才能获取到对应的valueinput内包含的组件类型 通过type指定:text文本框password密码框radio单选框属于同一组的选择框name属性要一致,不然单选框不能实现单选checkbox复选框分组 同单选框单选框不加属性时还不让你选file提供一个文件浏览按钮,多用于上传文件hidden隐藏组件,不需用户看到但服务端要用到,可通过JavaScript将其值在用户端运算后再提交至服务端使用button按钮 通过onclick方法添加事件监听reset重置按钮submit提交按钮image和submit一样,但可通过src属性指定一个图片充当按钮 美化效果选择列表,默认单选下拉式设定multiple属性使选项全部列出,无下拉效果size属性指定显示多少项,显示不完出现滚动条通过标签封装列表项文本区域 可指定行数和列数区域设置,可给form加外框外框上的文字可用legend标签指定form中的method指定提交方式,有7中,常用get和post用Java自定义服务端与form交互 查看数据提交不同之处get提交:信息显示在地址栏中,敏感信息泄露,不安全;地址栏存储信息量有限,不利于大数据量提交;将信息封装在消息头前边;提交至服务端的中文乱码需要再次编码后再解码post:地址栏上不显示提交的信息,避免信息泄露,安全;提交数据量无限制,方便大数据提交;将信息封装在消息头后边(空行后)的数据体中;中文乱码可通过设定字符集方法简单搞定Tomcat服务端默认使用的iso8859编码,两种提交方式提交中文时,服务端会显示乱码,需要在服务端使用指定字符集解码,request.setCharacterEncoding(“GBK”)但设定字符集方法只对数据体中的数据有效,get方式提交的信息封装在消息头中,不能使用这种方法。但可以通过先用iso8859编码再GBK解码的方式解决。推荐使用post方式提交。暴力提交、暴力注册暴力开始超链接默认就是get方式提交客户端首先进行数据有效性校验,服务端对客户端提交的数据必须再次校验label标签:用于给各元素定义快捷键for属性指定快捷键起作用的表单元素,其值必须与该表单元素的id值相同accessKey指定快捷键,要与Alt合用例:user namelabel使用技巧:将label标签加到tr标签上,for属性指向该tr里的文本框,在这行的任意位置点击鼠标,文本框都将获得焦点。其他标签:此标签内封装的文本数据格式将保持原样,包括空格和缩进等格式。常用于页面中显示带有缩进层次的代码。段落标签,两个段落之间带有空行加粗 加粗 斜体 下划线 下标 上标此标签内可以让内容动起来,scroll滚动穿过/alternate来回弹/slide一下摔死框架集frameset标签:将浏览器页面分成多个独立的部分,分别显示不同的页面放在head和body之间 frameset分割页面 frame指定小页面内容frameset中用rows和cols属性指定分割页面大小区域,可用百分比也可用像素值frame中的noresize属性使框架页面大小不可随意改动frame中添加的超链接默认都是在当前框架页面内打开的,要让其在当前窗口中的其他框架页面中打开,需要将框架页面添加一个name属性,让超链接的target属性值等于这个框架页面的name属性即可iframe画中画标签:直接在当前页面中挖出一个区域,显示指定页面内容画中画标签说明文字,这些文字在浏览器不支持iframe标签时显示画中画标签具有一定的危险性,可能被用于隐藏执行一些恶意的代码如:头标签内的一些标签:title:页面标题,显示在浏览器标题栏上的文字base:href指定页面中所有超链接的目录,可本地,也可网络,结尾一定要用斜杠/表示目录,只作用于相对路径文件。target指定打开方式meta:http-equiv:模拟HTTP协议响应消息头,3秒后刷新,打开指定网页link:给HTML关联一些文件,如CSS,JS等rel指定关联文件与HTML的关系 media指定文件作用的设备,多个设备斜杠分隔XHTML是可扩展的(Extensible)超文本标记语言,可理解为HTML向XML的过渡。XML是可扩展标记语言,是对数据信息的描述,而HTML是对数据显示的描述。XML规定更为严格,如标签不结束即错误。XML规范可被更多应用程序解释,将成为一种通用的数据交换语言,各个服务器、框架都将XML作为配置文件。Dreamweaver创建HTML文件自动生成的头部信息中,又一个规范约束文件(.dtd),描述一些标签信息,由此文件来约束标签的自动闭合,删除这些头部信息后,DW中输入标签将不会自动闭合。前边的网址并不代表此文件要从网络获取,只表示名称空间,可自定义。正则表达式正则表达式:是一种专门用来操作字符串的规则,通过一些符号来表示某些程序代码,简化对字符串的复杂操作,但可读性较差。常见操作:匹配、获取/查找、切割、替换匹配:String类中的matches方法matches(regex)获取(查找):Pattern+MatcherPattern p = Ppile(regex);封装规则Matcher m = p.matcher(String);关联字符串,获取对应匹配器while (m.find()查找是否包含有指定规则的字符串SOP(m.group();输出符合规则的内容切割:String中的split()spilt(regex)实现复杂切割(连词、叠词)替换:replaceAll(regex, str);示例:获取连续数字String regex = “d5,”;5个以上的连续数字符合规则Pattern p = Ppile(regex);Matcher m = p.matcher(String);while (m.find()String s = m.group();SOP(s.replaceAll(regex, “#”);将符合规则的数据替换掉网页爬虫:通过网络以及IO读取网页源文件,并通过规则获取网页中符合规则的数据。常用的一些正则符号:?零次或一次*零次或多次+一次或多次n正好n次n,最少n次n,m最少n次,最多m次点.表示任意字符d任意数字w字母数字下划线注意转义斜杠表示一个斜杠正则表达式中乱七八糟的组合很多,下面是js帮助文档中的说明,放这里以备查用正则表达式对象本对象包含正则表达式模式以及表明如何应用模式的标志。语法 1re = /pattern/flags语法 2re = new RegExp(pattern,flags) 参数re必选项。将要赋值为正则表达式模式的变量名。Pattern 必选项。要使用的正则表达式模式。如果使用语法 1,用 / 字符分隔模式。如果用语法 2,用引号将模式引起来。flags可选项。如果使用语法 2 要用引号将 flag 引起来。标志可以组合使用,可用的有: g (全文查找出现的所有 pattern) i (忽略大小写) m (多行查找) 说明不要将正则表达式对象跟全局 RegExp 对象混淆。尽管听起来像是一回事,但它们是截然不同的。正则表达式对象的属性只包含一个正则表达式的信息,而全局 RegExp 对象的属性包含了不断更新的每一个匹配出现的信息。正则表达式对象保存用于查找字符串中的字符组合时的模式。创建正则表达式对象后,或者它被传递给字符串方法,或者字符串被传递给一个正则表达式方法。有关最近进行查找的信息被保存在全局 RegExp 对象中。当预先知道查找字符串时用语法 1。当查找字符串经常变动或不知道时用语法 2,比如由用户输入得到的字符串。在使用前 pattern 参数被编译为内部格式。对语法 1 来说,pattern 在该脚本被装载时被编译。对语法 2 来说,pattern 在使用前,或调用 compile 方法时被编译。 示例下面的示例创建一个包含正则表达式模式及相关标志的对象(re),向您演示正则表达式对象的用法。在本例中,作为结果的正则表达式对象又用于 match 方法中:function MatchDemo()var r, re; / 声明变量。var s = The rain in Spain falls mainly in the plain;re = new RegExp(Spain,i); / 创建正则表达式对象。r = s.match(re); / 在字符串 s 中查找匹配。return(r); / 返回匹配结果。正则表达式语法一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。这里有一些可能会遇到的正则表达式示例:JScriptVBScript匹配/ t*$/ t*$匹配一个空白行。/d2-d5/d2-d5验证一个ID 号码是否由一个2位数字,一个连字符以及一个5位数字组成。/.*/.*匹配一个 HTML 标记。下表是元字符及其在正则表达式上下文中的行为的一个完整列表:字符描述将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,n 匹配字符 n。n 匹配一个换行符。序列 匹配 而 ( 则匹配 (。匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性, 也匹配 n 或 r 之后的位置。$匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 n 或 r 之前的位置。*匹配前面的子表达式零次或多次。例如,zo* 能匹配 z 以及 zoo。 * 等价于0,。+匹配前面的子表达式一次或多次。例如,zo+ 能匹配 zo 以及 zoo,但不能匹配 z。+ 等价于 1,。?匹配前面的子表达式零次或一次。例如,do(es)? 可以匹配 do 或 does 中的do 。? 等价于 0,1。nn 是一个非负整数。匹配确定的 n 次。例如,o2 不能匹配 Bob 中的 o,但是能匹配 food 中的两个 o。n,n 是一个非负整数。至少匹配n 次。例如,o2, 不能匹配 Bob 中的 o,但能匹配 foooood 中的所有 o。o1, 等价于 o+。o0, 则等价于 o*。n,mm 和 n 均为非负整数,其中n = m。最少匹配 n 次且最多匹配 m 次。刘, o1,3 将匹配 fooooood 中的前三个 o。o0,1 等价于 o?。请注意在逗号和两个数之间不能有空格。?当该字符紧跟在任何一个其他限制符 (*, +, ?, n, n, n,m) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 oooo,o+? 将匹配单个 o,而 o+ 将匹配所有 o。.匹配除 n 之外的任何单个字符。要匹配包括 n 在内的任何字符,请使用象 .n 的模式。(pattern)匹配pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0$9 属性。要匹配圆括号字符,请使用 ( 或 )。(?:pattern)匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 或 字符 (|) 来组合一个模式的各个部分是很有用。例如, industr(?:y|ies) 就是一个比 industry|industries 更简略的表达式。(?=pattern)正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如, Windows (?=95|98|NT|2000) 能匹配 Windows 2000 中的 Windows ,但不能匹配 Windows 3.1 中的 Windows。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。(?!pattern)负向预查,在任何不匹配Negative lookahead matches the search string at any point where a string not matching pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如Windows (?!95|98|NT|2000) 能匹配 Windows 3.1 中的 Windows,但不能匹配 Windows 2000 中的 Windows。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始 x|y匹配 x 或 y。例如,z|food 能匹配 z 或 food。(z|f)ood 则匹配 zood 或 food。 xyz字符集合。匹配所包含的任意一个字符。例如, abc 可以匹配 plain 中的 a。 xyz负值字符集合。匹配未包含的任意字符。例如, abc 可以匹配 plain 中的p。 a-z字符范围。匹配指定范围内的任意字符。例如,a-z 可以匹配 a 到 z 范围内的任意小写字母字符。 a-z负值字符范围。匹配任何不在指定范围内的任意字符。例如,a-z 可以匹配任何不在 a 到 z 范围内的任意字符。 b匹配一个单词边界,也就是指单词和空格间的位置。例如, erb 可以匹配never 中的 er,但不能匹配 verb 中的 er。 B匹配非单词边界。erB 能匹配 verb 中的 er,但不能匹配 never 中的 er。cx匹配由x指明的控制字符。例如, cM 匹配一个 Control-M 或回车符。 x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 c 字符。 d匹配一个数字字符。等价于 0-9。 D匹配一个非数字字符。等价于 0-9。 f匹配一个换页符。等价于 x0c 和 cL。n匹配一个换行符。等价于 x0a 和 cJ。r匹配一个回车符。等价于 x0d 和 cM。s匹配任何空白字符,包括空格、制表符、换页符等等。等价于 fnrtv。S匹配任何非空白字符。等价于 fnrtv。t匹配一个制表符。等价于 x09 和 cI。v匹配一个垂直制表符。等价于 x0b 和 cK。w匹配包括下划线的任何单词字符。等价于A-Za-z0-9_。 W匹配任何非单词字符。等价于 A-Za-z0-9_。 xn匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如, x41 匹配 A。x041 则等价于 x04 & 1。正则表达式中可以使用 ASCII 编码。.num匹配 num,其中 num 是一个正整数。对所获取的匹配的引用。例如,(.)1 匹配两个连续的相同字符。 n标识一个八进制转义值或一个后向引用。如果 n 之前至少 n 个获取的子表达式,则 n 为后向引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。nm标识一个八进制转义值或一个后向引用。如果 nm 之前至少有is preceded by at least nm 个获取得子表达式,则 nm 为后向引用。如果 nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的后向引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 nm 将匹配八进制转义值 nm。nml如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值 nml。un匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。例如, u00A9 匹配版权符号 (?)。Java帮助文档中的正则表达式:java.util.regex 类 Patternpublic final class Patternextends Objectimplements Serializable正则表达式的编译表示形式。 指定为字符串的正则表达式必须首先被编译为此类的实例。然后,可将得到的模式用于创建 Matcher 对象,依照正则表达式,该对象可以与任意字符序列匹配。执行匹配所涉及的所有状态都驻留在匹配器中,所以多个匹配器可以共享同一模式。 因此,典型的调用顺序是 Pattern p = Ppile(a*b); Matcher m = p.matcher(aaaaab); boolean b = m.matches();在仅使用一次正则表达式时,可以方便地通过此类定义 matches 方法。此方法编译表达式并在单个调用中将输入序列与其匹配。语句 boolean b = Pattern.matches(a*b, aaaaab);等效于上面的三个语句,尽管对于重复的匹配而言它效率不高,因为它不允许重用已编译的模式。 此类的实例是不可变的,可供多个并发线程安全使用。Matcher 类的实例用于此目的则不安全。 正则表达式的构造摘要 构造匹配字符x字符 x反斜线字符0n带有八进制值 0 的字符 n (0=n=7)0nn带有八进制值 0 的字符 nn (0=n=7)0mnn带有八进制值 0 的字符 mnn(0=m=3、0=n=7)xhh带有十六进制值0x 的字符 hhuhhhh带有十六进制值0x 的字符 hhhht制表符 (u0009)n新行(换行)符 (u000A)r回车符 (u000D)f换页符 (u000C)a报警 (bell) 符 (u0007)e转义符 (u001B)cx对应于 x 的控制符字符类abca、b 或 c(简单类)abc任何字符,除了 a、b 或 c(否定)a-zA-Za 到 z 或 A 到 Z,两头的字母包括在内(范围)a-dm-pa 到 d 或 m 到 p:a-dm-p(并集)a-z&defd、e 或 f(交集)a-z&bca 到 z,除了 b 和 c:ad-z(减去)a-z&m-pa 到 z,而非 m 到 p:a-lq-z(减去)预定义字符类.任何字符(与行结束符可能匹配也可能不匹配)d数字:0-9D非数字: 0-9s空白字符: tnx0BfrS非空白字符:sw单词字符:a-zA-Z_0-9W非单词字符:wPOSIX 字符类(仅 US-ASCII)pLower小写字母字符:a-zpUpper大写字母字符:A-ZpASCII所有 ASCII:x00-x7FpAlpha字母字符:pLowerpUpperpDigit十进制数字:0-9pAlnum字母数字字符:pAlphapDigitpPunct标点符号:!#$%&()*+,-./:;?_|pGraph可见字符:pAlnumpPunctpPrint可打印字符:pGraphx20pBlank空格或制表符: tpCntrl控制字符:x00-x1Fx7FpXDigit十六进制数字:0-9a-fA-FpSpace空白字符: tnx0Bfrjava.lang.Character 类(简单的 java 字符类型)pjavaLowerCase等效于 java.lang.Character.isLowerCase()pjavaUpperCase等效于 java.lang.Character.isUpperCase()pjavaWhitespace等效于 java.lang.Character.isWhitespace()pjavaMirrored等效于 java.lang.Character.isMirrored()Unicode 块和类别的类pInGreekGreek块(简单块)中的字符pLu大写字母(简单类别)pSc货币符号PInGreek所有字符,Greek 块中的除外(否定)pL&pLu所有字母,大写字母除外(减去)边界匹配器行的开头$行的结尾b单词边界B非单词边界A输入的开头G上一个匹配的结尾Z输入的结尾,仅用于最后的结束符(如果有的话)z输入的结尾Greedy 数量词X?X,一次或一次也没有X*X,零次或多次X+X,一次或多次XnX,恰好 n 次Xn,X,至少 n 次Xn,mX,至少 n 次,但是不超过 m 次Reluctant 数量词X?X,一次或一次也没有X*?X,零次或多次X+?X,一次或多次Xn?X,恰好 n 次Xn,?X,至少 n 次Xn,m?X,至少 n 次,但是不超过 m 次Possessive 数量词X?+X,一次或一次也没有X*+X,零次或多次X+X,一次或多次Xn+X,恰好 n 次Xn,+X,至少 n 次Xn,m+X,至少 n 次,但是不超过 m 次Logical 运算符XYX 后跟 YX|YX 或 Y(X)X,作为捕获组Back 引用n任何匹配的 nth 捕获组引用Nothing,但是引用以下字符QNothing,但是引用所有字符,直到 EENothing,但是结束从 Q 开始的引用特殊构造(非捕获)(?:X)X,作为非捕获组(?idmsux-idmsux)Nothing,但是将匹配标志i d m s u x on - off(?idmsux-idmsux:X)X,作为带有给定标志 i d m s u x on - off的非捕获组 (?=X)X,通过零宽度的正 lookahead(?!X)X,通过零宽度的负 lookahead(?=X)X,通过零宽度的正 lookbehind(?X)X,作为独立的非捕获组反斜线、转义和引用 反斜线字符 () 用于引用转义构造,如上表所定义的,同时还用于引用其他将被解释为非转义构造的字符。因此,表达式 与单个反斜线匹配,而 与左括号匹配。 在不表示转义构造的任何字母字符前使用反斜线都是错误的;它们是为将来扩展正则表达式语言保留的。可以在非字母字符前使用反斜线,不管该字符是否非转义构造的一部分。 根据 Java Language Specification 的要求,Java 源代码的字符串中的反斜线被解释为 Unicode 转义或其他字符转义。因此必须在字符串字面值中使用两个反斜线,表示正则表达式受到保护,不被 Java 字节码编译器解释。例如,当解释为正则表达式时,字符串字面值 b 与单个退格字符匹配,而 b 与单词边界匹配。字符串字面值 (hello) 是非法的,将导致编译时错误;要与字符串 (hello) 匹配,必须使用字符串字面值 (hello)。 字符类 字符类可以出现在其他字符类中,并且可以包含并集运算符(隐式)和交集运算符 (&)。并集运算符表示至少包含其某个操作数类中所有字符的类。交集运算符表示包含同时位于其两个操作数类中所有字符的类。 字符类运算符的优先级如下所示,按从最高到最低的顺序排列: 1字面值转义x2分组.3范围a-z4并集a-ei-u5交集a-z&aeiou注意,元字符的不同集合实际上位于字符类的内部,而非字符类的外部。例如,正则表达式 . 在字符类内部就失去了其特殊意义,而表达式 - 变成了形成元字符的范围。 行结束符行结束符 是一个或两个字符的序列,标记输入字符序列的行结尾。以下代码被识别为行结束符: 新行(换行)符 (n)、 后面紧跟新行符的回车符 (rn)、 单独的回车符 (r)、 下一行字符 (u0085)、 行分隔符 (u2028) 或 段落分隔符 (u2029)。 如果激活 UNIX_LINES 模式,则新行符是唯一识别的行结束符。 如果未指定 DOTALL 标志,则正则表达式 . 可以与任何字符(行结束符除外)匹配。 默认情况下,正则表达式 和 $ 忽略行结束符,仅分别与整个输入序列的开头和结尾匹配。如果激活 MULTILINE 模式,则 在输入的开头和行结束符之后(输入的结尾)才发生匹配。处于 MULTILINE 模式中时,$ 仅在行结束符之前或输入序列的结尾处匹配。 组和捕获 捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 (A)(B(C) 中,存在四个这样的组: 1(A)(B(C)2A3(B(C)4(C)组零始终代表整个表达式。 之所以这样命名捕获组是因为在匹配中,保存了与这些组匹配的输入序列的每个子序列。捕获的子序列稍后可以通过 Back 引用在表达式中使用,也可以在匹配操作完成后从匹配器获取。 与组关联的捕获输入始终是与组最近匹配的子序列。如果由于量化的缘故再次计算了组,则在第二次计算失败时将保留其以前捕获的值(如果有的话)例如,将字符串 aba 与表达式 (a(b)?)+ 相匹配,会将第二组设置为 b。在每个匹配的开头,所有捕获的输入都会被丢弃。 以 (?) 开头的组是纯的非捕获 组,它不捕获文本,也不针对组合计进行计数。CSS层叠样式表cascading style sheets将网页中的样式单独分离出来,完全由CSS控制,增强样式复用性和扩展性。格式:选择器属性名:属性值;属性名:属性值;CSS与HTML结合的4中方式:1、每个HTML标签都有style属性2、当页面中有多个标签具有相同样式时,可定义style标签封装样式以复用css代码3、当多个页面使用相同样式时,可将样式单独封装为CSS文件导入import url(“1.css”);4、通过HTML头标签中的link标签链接一个CSS文件技巧:为提高样式的复用性和可扩展性,将多个样式单独定义并封装为CSS文件,如p.css、div.css在一个总的CSS文件中,使用import导入这些CSS文件,然后在HTML页面中用link标签将这个总的CSS文件导入即可。优先级:就近原则标签上设置的style属性可以覆盖其他样式选择器:1、标签选择器:每个HTML标签名即为一个选择器2、类选择器:标签中的class属性指定 定义样式要加点 js引用时用className3、ID选择器:标签的id属性,尽量保证唯一,便于JavaScript获取元素4、扩展选择器:a、关联选择器:标签中的标签 table div表示表格中的div区域b、组合选择器:多个选择器逗号分隔c、为元素选择器:元素的状态 如超链接的默认状态、点击状态、悬停状态等a:linka:visiteda:hovera:activeLVHA顺序删除超链接默认下划线:text-decoration:nonep:first-letterp:first-linefocus:IE6不支持CSS滤镜:通过一些代码丰富了的样式网页设计时,DIV+CSSDIV和P标签都属于行级区域,回车效果,SPAN标签为块级区域,无回车效果可加border、color等属性,P标签中不要嵌套DIV标签JavaScript:基于对象和事件的脚本语言特点:安全性:不允许直接访问本地硬盘,可做的就是信息的动态交互跨平台性:只要可以解析JS的浏览器就可执行,与平台无关JavaScript与Java的不同:1、js是NetScape的产品,Java是SUN的产品2、js是基于对象的,Java是面向对象的3、js只需解释就可执行,Java需要先编译成字节码文件后再执行4、js是弱类型语言,Java是强类型的5、js是非严谨的,Java是严谨的JavaScript与HTML代码的结合方式:任何代码要融入HTML代码中都是通过标签形式1、将js代码存放在标签对中,规范要求加type属性,以前是language属性 js代码 2、将js代码封装成js文件,提高复用性变量通过关键字var定义,弱类型语言不需要指定具体数据类型特殊常量:undefined 变量没有初始化时值就是它数组:var arr = 1, 2, abc, 3.53数组长度是可变的,没有越界问题,其他值为undefinedvar arr = new Array()数组内可存放任意类型元素,推荐元素类型一致var arr = 1, 0, 3, true, abc;二维数组js中的数组就相当于Java中的集合函数:function 函数名(参数列表)js代码JavaScript函数没有重载形式,参数可随意传递,函数内部默认有一个arguments数组用来接收传入的参数,参数个数尽量保持一致alert(函数名)可将函数内容打印出来,包括注释动态函数:var fun = new Function(“x”, “y”, “var sum=x+y; return sum;”); var a = fun(3,2);函数的参数和函数体都可以通过字符串变量来动态修改匿名函数:同Java,多用于事件处理可以通过函数形式来模拟Java,创建对象function Person()alert(“person init”);var p = new Person();上面会调用Person的方法可以给p添加属性和方法 = “张三”p.age = 30;p.eat = function()引用name属性可用 或p“name”也可像Java一样使用this来完成对象构造简化操作的with语句和forin语句with用于确定对象的作用范围with(对象)可直接调用对象的属性和方法,不用加对象名forin语句用于遍历对象或数组for(变量)s in (学生对象)stu)alert(s)此处打印出stu的属性,要获得属性值用stusfor(x in array) alert(x)打印的是数组角标JavaScript的内部对象:Object、String、Array、MathString:长度为length属性,不是方法方法有:toUpperCase()toLowerCase()CharAt()indexOf()lastIndexOf()split()replace()substring(start, end)substr(start

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论