html中的 button,input-button, image, input-image的区别

hmtl中 为了验证 form的 action提交属性, 是指 表单提交到的 页面, 能够是任意 性质的页面, 如:html页面, php页面, asp页面等均可以, 实际在测试的时候, 能够就写 提交到的 html页面, 省得去部署安装phpjavascript

可是 ,若是form表单 中的action属性=""或者不写, 这时提交到的 目的页面仍是 该页面本身! 不是其余, 也不是没有处理者, 提交后本地页面中的 text文本域中原来输入的内容没有 改变? 这是由于 缓存的缘由, 而ctrl_F5 则看到没有利用缓存, 而是从源文件 / 原文件刷新的了....

在jquery的 click, focus , change ,hover等事件处理函数中, 出入函数的 是 this参数, 可是, 你要怎么使用, 那是你本身的须要, 你能够直接使用this, 也可使用$(this).

javascript的装载和执行特性

  • Javascript的装载和执行, 一般来讲,浏览器对于Javascript的运行有两大特性:1)载入后立刻执行(即便是对于异步的加载),2)执行时会阻塞页面后续的内容(包括页面的渲染、其它资源的下载). --- 你能够利用js的这两个特性, 来实现某种功能.... 因而,若是有多个js文件被引入,那么对于浏览器来讲,这些js文件被被串行地载入,并依次执行php

  • 由于javascript可能会来操做HTML文档的DOM树,因此,浏览器通常都不会像并行下载css文件并行下载js文件,由于这是js文件的特殊性形成的。因此,若是你的javascript想操做后面的DOM元素,基本上来讲,浏览器都会报错说对象找不到。由于Javascript执行时,后面的HTML被阻塞住了,DOM树时尚未后面的DOM结点。因此程序也就报错了。css

因此对于jquery的 $(); 方法, 中间必定要用function(){...}, 由于这是$(document)对象 的ready 事件中 要执行的函数, 即:html

$(document).ready( function(){...});

简写成 $(function(){...});

======================================================== ===java

button和input-button

  1. button: 语义上就是一个按钮,自己是一个行级元素, 可是若是放在 form表单后面, 因为form自己是一个 块级 元素, 因此, button放在form后将会在下一行.jquery

  2. 默认时,全部的input 元素都是 行级 元素, 因此都在一行, 排放在 form 表单容器中浏览器

  3. input button中, 按钮上的文字, 是经过 value值来设置的, 而因为 <button> A Button </button> button 自己是一个单独的 标签 元素, 因此它上面的文字, 是经过设置 button标签中间 的文本 来显式的 . 若是button标签中 没有包含文字,将显示得很低很矮的一个小按钮.缓存

  4. input button主要是 显示默认的 文字 风格样式, 而button标签的用法, 主要是用来 显示一些比较 复杂的内容, 如图像等...dom

  5. 任何input 元素, 要产生 对form 有效果的 动做, 如 reset submit等, 都要放在 form 表单 标签元素内, 不然, 跟form就没有什么关系了, 既然没有关系, 那么, 也就不能 对 form 产生 提交/重置等 操做影响了.异步

  6. form 表单内部的 button(由于在form外部的button 不会对form产生影响), 能够有三种type: 普通的button, 提交的submit, 重置的 reset. 就具备相应的功能...固然, input type=button就只有 button一种 类型了...

================================================ ==

alert中如何换行? 由于alert方法中, 不支持html标签, html标签将按照 literally 字面上进行显示, 不会被解析 因此 换行不能用 <br> 而是要用 \n 来表示.

<button> 标签上如何显式图片? 这也就是 所谓的 "图片按钮". 不能经过button的属性 url来实现, 而是 要经过 buttton 的 css样式来实现. 实际上, 对于任何html元素来讲, 都具备 均可以 经过css 的style样式 ,来 规定元素 的背景颜色, 背景图片, 和边框 大小 宽高等样式.... 因此图片按钮实际上只是一个普通的按钮, 只是 给它加上了一个 背景图片的 样式而已! 能够在图片按钮上添加 显示文字 , 也能够不添加文字, 显示为 所谓的 纯粹的 图片按钮!!

  • 在jquery的选择器, $(":button") 匹配的是全部的按钮, 不论是form内部的, 仍是form外面 的, 不论是 input-button: <input type="button" >, 仍是 <button>...</button>. 实际上, html中的 button就这两种形式, input-button和 标签button.

关于写尺寸的时候, 是否要写px单位? 第一, html默认的单位就是px, 因此html中能够不写px.如 <table borde="3"> 是有效的; 第二, css中, 没有默认的尺寸单位, 因此样式属性中的 数字后必定要加 px作单位, 不然这条css样式是无效的, table { border: 1 solid #eee;} 将不会出现边框...

要牢记jquery中 各个"选择器, 过滤器, 方法函数"中的参数的类型 ,参数所用的 符号 就暗示了 该参数是什么类型的, 如 :not(selector)not(expr| ele| fn) 中, 一样是not, 可是expr表示必须是字符串, 要加引号的; ele表示是 dom元素, 要获取dom元素, 能够经过 $("selector")[index] 的方式得到 element. 而selector: 虽然在 过滤器 :not(selector)中, 能够对selector不加引号, 可是 加上 引号也是 正确的. 总结: 对于选择器, 除了document外, 其他的凡是出现 selector的地方, 都统一的加上引号, 若是外面是双引号, 里面就加上 单引号: $("span:not('.span1')")......

关于not函数和:not筛选器? 在 如后结构 <p> <span class="span1"> span1 </span> <span class="span2"> span2 </span> </p>中, 使用 alert( $("p: not('.span1')").text()); 本意是想过滤掉.span1, 可是结果老是 显示 "span1 span2". 为何? 由于not是用来对 前面筛选出来的 元素集合 根据not中的条件 进行过滤的, 因此, not过滤的老是 同种 元素的集合. 是在 多个 同类 元素中进行过滤. 前面那个结构中, 是 先选出 全部 p 标签元素的 集合, 而后过滤. 这里 只有一个 p标签元素, 因此集合中就只有一个p元素. 要对这个p元素进行 不是.span1 类的 条件过滤, 因为这个p没有.span1的类, 因此最后, 老是会返回 这个p结构...因此老是显是 span1 span2. 而不是span2. 要只是显示span2, 应该是: alert( $("span: not('.span1')").text());

=================================================== ==

若是不用任何的button , submit, image图像域, 还可使用手动的方式, 经过代码的方式提交表单: $("要提交的表单").submit(); 即表单本身有一个 提交 方法submit(), 就是用来提交的

inputtype=submit 表单form没有onsubmit事件?

没有onsubmit事件?确实是没有! 其实是submit按钮的 click事件, 在这个按钮单击提交的时候, 首先是会引发form的"submit"事件,而后才会去调用 form.submit()函数. 因此能够在 onclick事件(实际上就是包含 了onsubmit事件, 是onsubmit的触发源!) 处理函数中, 经过return false来取消 提交, 经过(默认的就是)return true来提交表单.

注意: 在click函数中 , 去调用函数validateForm, 经过return false/true来控制是否继续提交表单.. 函数中,必定要 显示的写 return true 仍是 false, 不能是只写return, return默认的仍是返回true;

只有在type=submit时, 才有 提交的可能, 不然, 若是只是一个普通的按钮,默认单击时, 是没有任何动做的.

对reset类型的按钮, 理解reset的含义, 是要恢复到input type=text等 的 "初始状态", 而不是清空input-text: recovery its original value, not empty.

普通f5刷新: 会保留你在表单input中填写的数据, 可是由 js 执行产生的结果都将消失, 若是 按ctrl+F5则所有/全部的元素都将 初始化.

写事件 "属性" 的时候, 如今的主流浏览器, 支持 所有小写,也支持驼峰书写法。但不支持大小写混写. 如: onclick, onClick是能够的 ,可是OnCliCk是不行的.

对同一个标签元素, 不一样的浏览器在显示 / 渲染 元素标签的 默认属性时, 可能效果是不一样的, 如:对于提交按钮input type="submit" 谷歌显示的是“ 提交”, 火狐显示的是“提交查询”, ie显示的是“提交查询内容”。

html的标签, div, p, span div等, 都 能够 没有绝对的 层次和 包含 关系, 如button 能够包含div. 如在button标签中 能够包含div 标签.

任何html元素, 若是设置 属性 不能实现其 需求时, 能够 经过css来设置 他的 背景 边框 宽高等. 如要设置 有 图片的 按钮, 就时经过 css 的 background-image 来实现的:


:first和 :first-child的区别?

:first是 只返回 前面那个选择器的 第一个 子元素, 总的 只返回一个 子元素;
:first-child 是返回 前面选择器 集合中 每一个 父元素的 第一个子元素, 总的来讲, 会返回 多个元素.

相关文章
相关标签/搜索