整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

jquery中$(document).ready的使

jquery中$(document).ready的使用

览器通常会通过JavaScript为DOM元素添加事件,在常规的JavaScript代码中,会使用window.onload方法,而在jQuery中,使用的是$(document).ready()方法。在使用过程中,需要注意二者之间的细微区别。

1.执行时机

window.onload方法是在网页中所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行,即JavaScript此时才可以访问网页中的任何元素。而$(document).ready()方法注册的事件处理程序,在DOM完全就绪时就可以被调用,此时,网页的所有元素对jQuery而言都是可以访问的,但是,这并不意味着这些元素的关联文件都已经下载完毕。如果需要实现与window.onload同样的效果,jQuery中提供了专门的方法——load。

2.多次使用

window.onload方法只能保存对一个函数的引用,它会自动用后面的函数覆盖前面的函数,因此不能在现有的行为上添加新的行为。也就是说,需要把所有需要执行的代码放在一个方法中,并交给window.onload方法去执行。这就有局限性了,比如多个javascript文件都需要用到window.onload方法时。而jquery的$(document).ready()方法能够很好地处理上述情况,每次调用$(document).ready()方法都会在现有的行为上追加新的行为,这些行为会根据注册的顺序依次执行。

3.简写方式

$(document).ready(function(){

//编写代码

})可以简写为:

$(function(){

//编写代码

})

另外,$(document)也可以简写为$()。当$()不带参数时,默认参数是“document”,因此也可以简写为:

$().ready(function(){

//编写代码

})

4.实例代码:

window.onload

执行效果:

$(document).ready

执行效果:


以上即为window.onload和$(document).ready的区别,需要在实际的使用中仔细体会。

们在Chrome控制台中进行的操作其实是调用了 Chrome Command Line API。这个API主要完成选择和检查DOM元素,显示数据,执行函数以及监控DOM事件等任务。需要注意的是,这个API只能通过Chrome控制台调用,不能通过网页的脚本调用。

了解到这里,大家就明白了在控制台中用$查找元素和页面一毛钱关系也没有,也不是jQuery的选择器。顺便介绍一下 Chrome Command Line API有哪些接口。

  • $(selector)

    返回带有指定的 CSS 选择器的第一个 DOM 元素的引用。此函数等同于 document.querySelector() 函数。$是Chrome定义的一个别名,实际就是document.querySelector()。

注意: 如果页面中使用了jQuery或者其他脚本对 $ 进行了重写,那么 $ 会被覆盖。执行的结果将是jQuery或其他脚本的结果。

  • $$(selector)

    返回与给定 CSS 选择器匹配的元素数组。此命令等同于调用 document.querySelectorAll()。

  • $x(xpath)

    返回一个与给定 XPath 表达式匹配的 DOM 元素数组。

  • clear()

    清除其历史记录的控制台。

  • copy(object)

    将指定对象的字符串表示形式复制到剪贴板。

  • $_

    返回最近评估的表达式的值。

多数PHP程序都使用HTML表单从用户那里获取数据并计算结果。

HTML表单的一些基本原则

  • 选择适合于收集的数据类型和提供交互方式的控件。
  • 清楚标记每一个控件,这样用户就可以理解其功能。
  • 尽可能将标签对齐。将控件的左边缘对齐。
  • 将相关的标签分组,并且通过设计中使用空白将每一个分组分开。
  • 表单上的控件顺序应该类似于用户操作他们的顺序。

创建基本HTML表单

首先创造一个基本的HTML大纲,包含表单控件;然后将控件进行合并(HTML表单必须包括一个提交按钮,用户单击它可以将表单数据发送到服务器。)一个单独的HTML页面可以包含多个表单。

  • 创建HTML结构

包含表单的HTML结构和和普通的HTML结构一样。

<HTML>
  <HEAD>
  <TITLE>标题放在这</TITLE>
  </HEAD>
<BODY>
  表单页面放在这
  </BODY>
  </HTML>

在包含表单的HTML页面中可以使用任何HTML标签。基本的表单使用FROM标签来说明。该标签中METHOD属性接收GET或POST两个值中的一个。ACTION属性子明PHP脚本的url,该脚本可以收集通过表单收集的数据,可以是绝对路径或者相对路径

<FORM METHOD="method" ACTION="url"> 
  中间可以放置表单控件
  </FORM>
  • 合并控件

两个常用的基本控件:文本框和提交按钮。

文本框:允许用户键入信息以发送给PHP脚本。NAME属性为文本提供名称,PHP脚本可以通过名称准确访问其内容,因此它应该是唯一的且符合PHP变量命名规则(但不需要$符号),单标签。VALUE属性指明出现在提交按钮上面的标题。创建方式如下:

<INPUT TYPE="TEXT" NAME="text">

提交按钮:允许用户将一个表单的内容发送到服务器,一个HTML表单对应应该有一个提交按钮。

示例:一个完整的HTML表单。

<HTML>
  <HEAD>
  <TITLE>标题</TITLE>
  </HEAD>
<BODY>
<FORM METHOD="POST" ACTION="phpinfo.php">
<INPUT TYPE="TEXT" NAME="user_name">
<BR/>
<BR/>
<INPUT TYPE="TEXT" NAME="user_email">
<BR/>
<BR/>
<INPUT TYPE="SUBMIT" VALUE="Send the Data">
</FORM>
  </BODY>
  </HTML>


  • 使用多个表单

可以在一个HTML页面中包含多个表单,注意下一个表单的FORM开始之前需要结束前一个FORM表单。

<HTML>
  <HEAD>
  <TITLE>标题</TITLE>
  </HEAD>
<BODY>
  
<FORM METHOD="POST" ACTION="phpinfo.php">
<INPUT TYPE="TEXT" NAME="user_name">
<BR/>
<BR/>
<INPUT TYPE="TEXT" NAME="user_email">
<BR/>
<BR/>
<INPUT TYPE="SUBMIT" VALUE="Send the Data">
<BR/>
<BR/>
</FORM>

<FORM METHOD="POST" NAME="phpinfo.php">
<INPUT TYPE="TEXT" NAME="user_name1">
<BR/>
<BR/>
<INPUT TYPE="TEXT" NAME="user_email1">
<BR/>
<BR/>
<INPUT TYPE="SUBMIT" VALUE="Send the Data1">
</FORM>

  </BODY>
  </HTML>


创建表单控件

  • 创建自定义的文本框

文本框的属性中,TYPE和NAME是必须的,其余是可选属性。SIZE属性用于设置文本框的可视大小;MAXLENGTH指明用户键入字符的最大长度;VALUE给出了一个最初显示在文本框中的值。

<input type="text" name="" size="" maxlength="" value="">
  • 创建文本区域

文本区域可以输入多行文本。NAME和ROWS属性是必须的。ROWS属性表明了文本区域内可以看到的文本行数,充满时会滚动。COLS属性指明可见文本列数与行数类似。WRAP属性指明文本区域内单词换行的方式,可以指定如下值。该标签为双标签。

说明

off

禁止单词换行但用户可以输入换行符强制换行

virtual/soft

各行显示为换行,但是换行并没有被发送到服务器

physica/hard

启用了单词换行

<inputarea name="" rows="" cols="" wrap="">
  • 创建密码框

创建密码框的语法与文本框相同,但要将TYPE属性指定为PASSWORD而不是TYPE。

<input type="password" name="" size="" maxlength="" value="">
  • 创建复选框

取两个值中的一个,即二选一。TYPE属性是必须的,checked属性出现,该复选框默认情况会被选定。value属性指定复选框被选定情况下被发送到服务器的值,默认发送on值。法如下:

<input type="checkbox" name="" checked value="">
  • 创建单选按钮

语法与复选框属性含义相同,但是TYPE属性的值必须是RADIO,NAME属性是必须的。

<input type="radio" name="" checked value="">
  • 创建列表框

用户可以选择一个或者多个选项,它是一个滚动菜单。

<select name="" multipile size="">options go here</select>

name属性是必须的,multipile属性指明用户可以通过按下crtl键并单击多个选项来选择它们

列表框的单选行为可作为单选按钮。

<option selected value="text"></options>
  • 创建隐藏域
<input type="hidden" name="text"value="">
  • 实现上传文件的HTML表单
<input type="FILE" name="name" accept="time" value="text">

其中type属性是必须的。格式通过使用MIME码指定。常用的格式如下:


超文本标记语言文本 .html,.html text/html

  普通文本 :txt text/plain

  word文档:application/msword

  RTF文本 :rtf application/rtf

  GIF图形 :gif image/gif

  JPEG图形 :jpeg,

  jpg: image/jpeg

  au声音文件:au audio/basic

  MIDI音乐文件 :mid,.midi audio/midi,audio/x-midi

  RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio

  MPEG文件 .mpg,.mpeg video/mpeg

  AVI文件 .avi video/x-msvideo

  GZIP文件 .gz application/x-gzip

  压缩文件.rar application/octet-stream

  压缩文件.zip application/x-zip-compressed

  TAR文件 .tar application/x-tar


更多提交表单的信息

  • 使用图像提交数据
<input type="image" src="url" name="text" align="align">
  • 创建重置按钮
<input type="reset" value="text">