请问一下textarea里为什么分不了行?

5、readonly的数据是可以提交到服务器的,disabled的数据是无法提交到服务器的。从提交的url可以看出设置readonly元素值可以提交到服务器,但是设置disabled元素值无法提交到服务器。

23、如何判断微信内置浏览器

如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent,经过在 iPhone 上微信的浏览器的检测,它的 User Agent 是:

这样在一般的浏览器中可以在服务器端正常的获取referer,但是如果是IE浏览器就不正常了,解决方法是在IE中create一个a标签然后触发它的click事件。

默认是post),Form中提交的数据将会附加在RUL之后,以?分开URL分开。字母数据字符原样发送,但空格转换为“+”号,其它符号转换为%xx,其中xx为该符号以16进制表示的ascii(或iso latin-1)值。get请求提交的数据放置在HTTP请求协议头中,而post提交的数据则放在实体数据中;get方式提交的数据最多只能有2048字节,而post则美誉写限制。post传递的参数在doc里,也就http协议所传递的文本,接受时再解析参数部分。获得参数。一般用post比较好。post提交数据是隐式的,get是通过在URL里面传递的,用来传递一些不需要保密的数据,get是通过的URL里传递参数,post不是。

toString 本来是用来做字符串转换的,不过现在流行用来做变量类型的检查了。舜子这里也写了一个函数,方便检查变量的类型,可以用来代替 typeof 

87、都知道哪些不好的jQuery书写方式。

答:定义变量时,全局变量不添加var,因为这个是删除不掉的。还有就是像写流水账一样的编程方式,将很多东西都蹂躏在一起,没有将不同的对象和功能给区分开。定义一个对象最好是以函数表达式的方式定义,尽量不要定义对象字面量,这样里面的私有属性或者方法容易被用户修改,也就是不安全。

在提到上述的概念之前,首先想说说javascript中函数的隐含参数:

连接、连接尽量在echo之前断开连接。

使用保持用户在线状态,方便负载均衡、统计、定位用户在线情况及跨域访问。

当前绝大部分可以通过来存储实现,具有更多的特性,如:安全、高可用等。

(MySQL基于主键查询可实现5000+qps每核心)

浏览器并发下载数参考:

在项目的交互或视觉评审中,前端同学常常会对一些交互效果质疑,提出这样做不好那样做不好。主要原因是这些效果通常会产生一系列的浏览器重绘和重排,需要付出高昂的性能代价。那么,什么是浏览器的重绘和重排呢?二者何时发生以及如何权衡?如何在具体的开发过程中将重绘和重排引发的性能问题考虑进去?本文期待可以部分解释以上三个问题。

浏览器从下载文档到显示页面的过程是个复杂的过程,这里包含了重绘和重排。各家浏览器引擎的工作原理略有差别,但也有一定规则。简单讲,通常在文档初次加载时,浏览器引擎会解析HTML文档来构建DOM树,之后根据DOM元素的几何属性构建一棵用于渲染的树。渲染树的每个节点都有大小和边距等属性,类似于盒子模型(由于隐藏元素不需要显示,渲染树中并不包含DOM树中隐藏的元素)。当渲染树构建完成后,浏览器就可以将元素放置到正确的位置了,再根据渲染树节点的样式属性绘制出页面。由于浏览器的流布局,对渲染树的计算通常只需要遍历一次就可以完成。但table及其内部元素除外,它可能需要多次计算才能确定好其在渲染树中节点的属性,通常要花3倍于同等元素的时间。这也是为什么我们要避免使用table做布局的一个原因。

重绘是一个元素外观的改变所触发的浏览器行为,例如改变vidibility、outline、背景色等属性。浏览器会根据元素的新属性重新绘制,使元素呈现新的外观。重绘不会带来重新布局,并不一定伴随重排。

重排是更明显的一种改变,可以理解为渲染树需要重新计算。下面是常见的触发重排的操作:

1. DOM元素的几何属性变化。
当DOM元素的几何属性变化时,渲染树中的相关节点就会失效,浏览器会根据DOM元素的变化重建构建渲染树中失效的节点。之后,会根据新的渲染树重新绘制这部分页面。而且,当前元素的重排也许会带来相关元素的重排。例如,容器节点的渲染树改变时,会触发子节点的重新计算,也会触发其后续兄弟节点的重排,祖先节点需要重新计算子节点的尺寸也会产生重排。最后,每个元素都将发生重绘。可见,重排一定会引起浏览器的重绘,一个元素的重排通常会带来一系列的反应,甚至触发整个文档的重排和重绘,性能代价是高昂的。

2.DOM树的结构变化。
当DOM树的结构变化时,例如节点的增减、移动等,也会触发重排。浏览器引擎布局的过程,类似于树的前序遍历,是一个从上到下从左到右的过程。通常在这个过程中,当前元素不会再影响其前面已经遍历过的元素。所以,如果在body最前面插入一个元素,会导致整个文档的重新渲染,而在其后插入一个元素,则不会影响到前面的元素。

浏览器引擎可能会针对重排做了优化。比如Opera,它会等到有足够数量的变化发生,或者等到一定的时间,或者等一个线程结束,再一起处理,这样就只发生一次重排。但除了渲染树的直接变化,当获取一些属性时,浏览器为取得正确的值也会触发重排。这样就使得浏览器的优化失效了。这些属性包括:offsetTop、offsetLeft、

此外,改变元素的一些样式,调整浏览器窗口大小等等也都将触发重排。

开发中,比较好的实践是尽量减少重排次数和缩小重排的影响范围。例如:
1. 将多次改变样式属性的操作合并成一次操作。例如,

2. 将需要多次重排的元素,position属性设为absolute或fixed,这样此元素就脱离了文档流,它的变化不会影响到其他元素。例如有动画效果的元素就最好设置为绝对定位。
3. 在内存中多次操作节点,完成后再添加到文档中去。例如要异步获取表格数据,渲染到页面。可以先取得数据后在内存中构建整个表格的html片段,再一次性添加到文档中去,而不是循环添加每一行。
4. 由于display属性为none的元素不在渲染树中,对隐藏的元素操作不会引发其他元素的重排。如果要对一个元素进行复杂的操作时,可以先隐藏它,操作完成后再显示。这样只在隐藏和显示时触发2次重排。
5. 在需要经常取那些引起浏览器重排的属性值时,要缓存到变量。

一、https协议需ca申请证书,免费证书少,需交费。

二、http是超文本传输协议,信息明文,https具有安全性的ssl加密。

三、http和https使用不同的连接方式,端口也不一样,前者80,后者443。

四、http连接简单无状态;HTTPS协议由SSL+HTTP协议进行加密传输、身份认证,比http安全。

93、设置双核浏览器的浏览模式()

极速模式、兼容模式及IE9高速模式是360浏览器显示网页时使用的三种模式:

360极速浏览器会自动为您选择使用适合每个网站的浏览模式。所以,通常您不用了解几种内核的区别。

极速模式下,网站打开速度快,但某些网站在极速模式下可能出现兼容性问题,显示不正常。
兼容模式下,网站打开速度比极速模式略低,但网页兼容性问题较少。
IE9/IE10模式下,网站会使用IE9/IE10的渲染方式渲染,支持硬件加速及IE9/IE10全新的脚本渲染引擎。

切换浏览模式时,360极速浏览器将会自动同步双核间的数据,让您在双核间能无缝切换。

在您加入用户体验计划的情况下,我们会将切换的网址发送到360网站,以便我们完善兼容列表库,改进产品。

上传的数据不包含具有您个体特征的信息,且不会泄漏给第三方个人或机构。

若不希望上传切换的网址,您只需在“高级选项”里去掉勾选
“ 将使用情况统计信息和崩溃报告自动发送给360极速浏览器网站,帮助我们完善360极速浏览器”即可。

由于众所周知的情况,国内的主流浏览器都是双核浏览器:基于Webkit内核用于常用网站的高速浏览。基于IE的内核用于兼容网银、旧版网站。以360的几款浏览器为例,我们优先通过Webkit内核渲染主流的网站,只有小量的网站通过IE内核渲染,以保证页面兼容。在过去很长一段时间里,我们主要的控制手段是一个几百k大小网址库,一个通过长期人工运营收集的网址库。

尽管我们努力通过用户反馈、代码标签智能判断技术提高浏览器的自动切核准确率。但是在很多情况下,我们仍然无法达到百份百正确。因此,我们新增加了一个控制手段:内核控制Meta标签。只要你在自己的网站里增加一个Meta标签,告诉360浏览器这个网址应该用哪个内核渲染,哪么360浏览器就会在读取到这个标签后,立即切换对应的内核。并将这个行为应用于这个二级域名下所有网址。
目前该功能已经在所有的360安全浏览器实现。我们也建议其它浏览器厂商一起支持这个实现。让这个控制标签成为行业标准。

在head标签中添加一行代码:

二者的区别主要在于正则表达式在设置了全局标识符g的情况。

但在设置了全局标识符g时,string.match(regexp)会把所有的匹配都放入结果数组中,regexp.exec(string)的结果则只给出第一个成功的匹配。

而用regexp.lastIndex属性来记录下一次匹配开始的位置。测试如下:

1、只要“||”前面为false,无论“||”后面是true还是false,结果都返回“||”后面的值。

2、只要“||”前面为true,无论“||”后面是true还是false,结果都返回“||”前面的值。


由上两个测试可知,逻辑运算符,“||”和“&&”都是遵行短路原则,只要确定符号前面的真假,既可确定返回值。

需要说明的是“&&”的优先级是高于“||”的,下面测试:

根据反证原理,我们假设“||”的优先级不低于“&&”(这里只所以用“不低于”,是为了同时证明等级相同的情况)。

根据上面我们得出的结论(1),(1||'a')将返回前面的值1,(1&&2)根据结论(4)应该返回后面的值2。这显然不对,由此可知“&&”的优先级是高于“||”的。

手机浏览器是把页面放在一个虚拟的“窗口”(viewport)中,通常这个虚拟的“窗口”(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户可以通过平移和缩放来看网页的不同部分。移动版的 Safari 浏览器最新引进了 viewport 这个 meta tag,让网页开发者来控制 viewport 的大小和缩放,其他手机浏览器也基本支持。

一个常用的针对移动网页优化过的页面的 viewport meta 标签大致如下:

width:控制 viewport 的大小,可以指定的一个值,如果 600,或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。
initial-scale:初始缩放比例,也即是当页面第一次 load 的时候缩放比例。
maximum-scale:允许用户缩放到的最大比例。
minimum-scale:允许用户缩放到的最小比例。

}



  • 表单是网页中最常见的与用户进行数据交互的元素
  • 表单中用户填写的数据一般需要提交到后台的php文件中进行处理或保存在数据库中

  • 表单分为表单元素与控件元素二部分
  • 表单控件元素,根据类型不同,有多个

表单提交的 URL 地址(处理表单请求的脚本)
设置表单提交数据的编码方式
表单唯一名称,与 ID 同义

  • web 请求方式有二种: 超链接与表单提交
  • 超链接就是使用<a>标签发起请求,其实就是GET请求
  • 表单提交默认就是GET请求,但例用最多的是POST
  • 请求类型属性action的取值
默认值,表单数据以请求参数形式通过 URL 提交, 数据量最大 2K
表单数据放在请求体中发送,数据量更大也更安全

采用二进制流处理,会把文件域中的内容封装到请求参数中,适合

id一样,用来唯一标识该表单元素
用于表单控件元素的 form 属性,用来绑定所属表单

默认值,当前窗口打开提交的 URL
新窗口打开提交的 URL
父窗口打开提交的 URL
顶层窗口打开提交的 URL

控件类型,如文本框, 复选框…
请求参数的名称,对应于脚本处理的变量名
请求参数的值,对应于脚本处理的变量值,使用预定义值控件无效
元素禁用,(布尔属性)
自动获取焦点,一个表单仅 限一个控件

单行文本框 (默认值)

失去焦点,且值发生变化时触发
值发生变化(不等失去焦点)时触发

  • 它存在的意义就是关联控件,当点击它时将焦点自动落在关联控件内部
  • <label>有二种方式与控件元素进行关联/绑定

按钮的唯一名称,与 ID 等效
按钮所属表单(此时按钮type默认类型为submit提交)
设置不同按钮可将表单数据提交到不同的 URL 处理

是否允许多选(布尔属性)

当下拉列表选项值发生变化时才会触发
只要点击就会触发(选项值可以不改变)


自动获取焦点(布尔属性)


  • 当表单字段非常多时,分组管理很有必要,例如将必填项与选填项分开

分组所属表单,默认是最近的表单

name,form属性仅供参考,提交参数仍依赖内部控件中的form属性


框架中加载的页面 URL

老师批语:并不是放个链接, 就可以不在作业中放代码了, 并不是每个访客都会点开链接的

}

我要回帖

更多关于 choose encoding 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信