ownerdocument是什么意思?它是怎么使用的
根据提供的原始 HTML 标记字符串,动态创建由 jQuery 对象包装的 DOM 元素。同时设置一系列的属性、事件等。
你可以传递一个手写的 HTML 字符串,或者由某些模板引擎或插件创建的字符串,也可以是通过 AJAX 加载过来的字符串。但是在你创建 input 元素的时会有限制,可以参考第二个示例。当然这个字符串可以包含斜杠 (比如一个图像地址),还有反斜杠。当你创建单个元素时,请使用闭合标签或 XHTML 格式。例如,创建一个 span ,可以用$("") 或 $("") ,但不推荐 $("")。在jQuery 中,这个语法等同于$(document.createElement("span")) 。
在jQuery 1.8中,通过$(html,props), 您可以使用任何jQuery对象的方法或插件。在此之前,你只能使用一个方法名的短名单,并有没有成文的方式添加到列表中。现在并不需要是一个列表,在所有!然而,请注意,这可能会导致你的代码的行为改变,如果插件添加后,有相同的名称作为HTML属性。
jQuery( html [, ownerDocument] )、jQuery( html, props )
如果传入的字符串参数看起来像一段HTML代码(例如,字符串中含有
$('<p id="test">My <em>new</em> text</p>').appendTo('body');
如果HTML代码是一个单独标签,例如,$('')或$(''),jQuery会使用浏览器原生方法document.createElement()创建DOM元素。如果是比单独标签更复杂的HTML片段,例如上面例子中的$('
Mynewtext
'),则利用浏览器的innerHTML机制创建DOM元素,这个过程由方法jQuery.buildFragment()和方法jQuery.clean()实现,相关内容分别在2.4节和2.5节介绍和分析。第二个参数ownerDocument用于指定创建新DOM元素的文档对象,如果不传入,则默认为当前文档对象。
如果HTML代码是一个单独标签,那么第二个参数还可以是props,props是一个包含了属性、事件的普通对象;在调用document.createElement()创建DOM元素后,参数props会被传给jQuery方法.attr(),然后由.attr()负责把参数props中的属性、事件设置到新创建的DOM元素上。
参数props的属性可以是任意的事件类型(如“click”),此时属性值应该是事件监听函数,它将被绑定到新创建的DOM元素上;参数props可以含有以下特殊属性:val、css、html、text、data、width、height、offset,相应的jQuery方法:.val()、.css()、.html()、.text()、.data()、.width()、.height()、.offset()将被执行,并且属性值会作为参数传入;其他类型的属性则会被设置到新创建的DOM元素上,某些特殊属性还会做跨浏览器兼容(如type、value、tabindex等);可以通过属性名class设置类样式,但要用引号把class包裹起来,因为class是JavaScript保留字。例如,在下面的例子中,创建一个p元素,并设置类样式为“test”、设置文本内容为“Click me!”、绑定一个click事件,然后插入body节点的末尾,当点击该p元素时,还会切换类样式test:
$("<p/>", { "class": "test", text: "Click me!", click: function(){ $(this).toggleClass("test"); } }).appendTo("body");
示例代码:
动态创建一个 p 元素(以及其中的所有内容),并将它追加到 body 元素中。在这个函数的内部,是通过临时创建一个元素,并将这个元素的 innerHTML 属性设置为给定的标记字符串,来实现标记到 DOM 元素转换的。所以,这个函数既有灵活性,也有局限性。
jQuery 代码:
$("<p><p>Hello</p></p>").appendTo("body");
描述:
创建一个 元素必须同时设定 type 属性。因为微软规定 元素的 type 只能写一次。
jQuery 代码:
// 在 IE 中无效: $("<input>").attr("type", "checkbox"); // 在 IE 中有效: $("<input type='checkbox'>");
描述:
动态创建一个 p 元素(以及其中的所有内容),并将它追加到 body 元素中。在这个函数的内部,是通过临时创建一个元素,并将这个元素的 innerHTML 属性设置为给定的标记字符串,来实现标记到 DOM 元素转换的。所以,这个函数既有灵活性,也有局限性。
jQuery 代码:
$("<p>", { "class": "test", text: "Click me!", click: function(){ $(this).toggleClass("test"); } }).appendTo("body");
描述:
创建一个 元素,同时设定 type 属性、属性值,以及一些事件。
jQuery 代码:
$("<input>", { type: "text", val: "Test", focusin: function() { $(this).addClass("active"); }, focusout: function() { $(this).removeClass("active"); } }).appendTo("form");
jQuery( html, [ownerDocument] ) 的用途是通过 html 字符串创造相应的 node 节点,jQuery 分为了两种情况,一种是 html 是由一个标签组成的 html 字符串,比如
<span>I'm a SPAN</span>
这时, jQuery 会使用正则表达式匹配出这个 tag 的 tag name ,然后使用
document.createElement( tagName )
来生成这个 node ,而对于多个标签(还包括单个标签的前后有空白字符串)的情况,会这么处理:
先用 document.createDocumentFragment 创建一个 documentFragment
然后 用 document.createElement('p') ,创建一个 p
然后再 p.innerHTML = html ,创建 html 字符串对应的 node 节点
然后从 p 中得到这些节点,并返回
以上是ownerdocument是什么意思?它是怎么使用的的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

ccsvchst.exe是一种常见的进程文件,它是SymantecEndpointProtection(SEP)软件的一部分,而SEP则是一款由著名的网络安全公司Symantec开发的终端保护解决方案。作为该软件的一部分,ccsvchst.exe负责管理和监控SEP的相关进程。首先,我们来了解一下SymantecEndpointProtection(

Shift键中文名为上档转换键。解析1Shift键中文名为上档转换键,可以与很多键配合着使用,所以作用非常多。2shift键可以切换输入法,按住Shift键后可以连续选择多个文件。3可以取消软件的开机自动启动。开机的时候一直按住Shift键,那些设置好的启动项都会被取消。4选中要删除的文件,然后按住shife键,再按住deldete键,那么就可以直接将文件删除,该文件是不会进入回收站的。补充:快捷键是什么意思1快捷键指的是通过某些特定的按键、按键顺序或按键组合来完成一个操作,很多快捷键往往与Ct

技嘉的主板怎么设置键盘开机首先,要支持键盘开机,一定是PS2键盘!!设置步骤如下:第一步:开机按Del或者F2进入bios,到bios的Advanced(高级)模式普通主板默认进入主板的EZ(简易)模式,需要按F7切换到高级模式,ROG系列主板默认进入bios的高级模式(我们用简体中文来示范)第二步:选择到——【高级】——【高级电源管理(APM)】第三步:找到选项【由PS2键盘唤醒】第四步:这个选项默认是Disabled(关闭)的,下拉之后可以看到三种不同的设置选择,分别是按【空格键】开机、按组

demo这个词对于喜欢唱歌的小伙伴已经不在陌生了,但是有很多没有接触到的用户好奇了demo是什么意思呢?现在就来看一下小编带来的demo的含义介绍吧。demo是什么意思答案:录音样带。1、demo读音英['deməʊ]、美['demoʊ]2、demo是"demonstration"的缩写,一般指歌曲正式录制前试听的初步效果;3、demo用作名词是录音样带和试样唱片的意思,用动词是试用(尤指软件)、演示和示范;

我们经常会在购买电视,电脑或者手机时看到多少K屏幕这种介绍,例如2.8K屏幕。每当这个时候就会有对电子设备不太了解的小伙伴好奇这个2.8K屏幕到底是什么意思,分辨率又是什么。2.8k屏幕什么意思答:2.8k屏幕的意思是屏幕的分辨率为2880*18002K就是横向像素点数量大于2000,相同大小的屏幕,分辨率越高画面质量越好。分辨率介绍1、由于屏幕上的点、线和面都是由像素组成的,显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也越多。2、分辨率越高,像素的数目越多,感应到的图像越

游戏bug是什么意思在玩游戏的过程中,我们常常会遇到一些意想不到的错误或者问题,比如角色卡住、任务无法继续、画面闪烁等等。这些不正常的现象就被称为游戏bug,即游戏中的故障或错误。在本文中,我们将探讨游戏bug是什么意思以及对玩家和开发者的影响。游戏bug是指在游戏的开发或运行过程中出现的错误,导致游戏无法正常进行或者出现不符合预期的情况。这些错误可能是由于

我们如果想要安装Windows系统,肯定会接触到pe系统,但是很多朋友并不了解电脑系统pe是什么意思,其实它就是Windows为用户提供的一个预安装环境系统。电脑系统pe是什么意思:答:电脑系统pe是windows预安装环境,是英文PreinstallEnvironment的简称,主要用于Windows系统安装和维护。1、pe是基于win32的一个子系统,它能够在我们没有安装时直接通过u盘或光盘启动。2、对于普通用户来说,在pe里最常用的就是安装Windows系统、修复系统、维护磁盘环境。3、此

连接打印机0x0000011b是什么意思在使用电脑、笔记本或者其他设备时,用户常常会遇到各种错误代码。其中,0x0000011b是一种常见的打印机连接错误代码。那么,连接打印机0x0000011b到底是什么意思呢?首先,我们需要了解一下打印机连接的基本原理。当我们需要从电脑上打印文件时,通常需要将打印机连接到电脑上,以便二者之间进行数据传输。这种连接可以通过
