jQuery(html,[ownerDocument])详解
Posted aid12580
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery(html,[ownerDocument])详解相关的知识,希望对你有一定的参考价值。
概述
根据提供的原始 html 标记字符串,动态创建由 jQuery 对象包装的 DOM 元素。同时设置一系列的属性、事件等。
你可以传递一个手写的 HTML 字符串,或者由某些模板引擎或插件创建的字符串,也可以是通过 AJAX 加载过来的字符串。但是在你创建 input 元素的时会有限制,可以参考第二个示例。当然这个字符串可以包含斜杠 (比如一个图像地址),还有反斜杠。当你创建单个元素时,请使用闭合标签或 XHTML 格式。例如,创建一个 span ,可以用$("<span/>") 或 $("<span></span>") ,但不推荐 $("<span>")。在jQuery 中,这个语法等同于$(document.createElement("span")) 。
在jQuery 1.8中,通过$(html,props), 您可以使用任何jQuery对象的方法或插件,我们在Renault CAN Clip项目中,就使用了这个方法。在此之前,你只能使用一个方法名的短名单,并有没有成文的方式添加到列表中。现在并不需要是一个列表,在所有!然而,请注意,这可能会导致你的代码的行为改变,如果插件添加后,有相同的名称作为HTML属性。
参数
html,[ownerDocument]String,DocumentV1.0
html:用于动态创建DOM元素的HTML标记字符串
ownerDocument:创建DOM元素所在的文档
html,propsString,MapV1.4
html:用于动态创建DOM元素的HTML标记字符串
props:用于附加到新创建元素上的属性、事件和方法
示例
描述:
动态创建一个 div 元素(以及其中的所有内容),并将它追加到 body 元素中。在这个函数的内部,是通过临时创建一个元素,并将这个元素的 innerHTML 属性设置为给定的标记字符串,来实现标记到 DOM 元素转换的。所以,这个函数既有灵活性,也有局限性。
jQuery 代码:
$("<div><p>Hello</p></div>").appendTo("body");
描述:
创建一个 <input> 元素必须同时设定 type 属性。因为微软规定 <input> 元素的 type 只能写一次。
jQuery 代码:
// 在 IE 中无效:
$("<input>").attr("type", "checkbox");
// 在 IE 中有效:
$("<input type=‘checkbox‘>");
描述:
动态创建一个 div 元素(以及其中的所有内容),并将它追加到 body 元素中。在这个函数的内部,是通过临时创建一个元素,并将这个元素的 innerHTML 属性设置为给定的标记字符串,来实现标记到 DOM 元素转换的。所以,这个函数既有灵活性,也有局限性。
jQuery 代码:
$("<div>", {
"class": "test",
text: "Click me!",
click: function(){
$(this).toggleClass("test");
}
}).appendTo("body");
描述:
创建一个 <input> 元素,同时设定 type 属性、属性值,以及一些事件,关于jquery appendto,这是个非常不错的功能,chinaobd2.com网站左侧的在线社交分享插件,就是通过appendto来实现的,在网页底部加载代码,确保不影响网站打开速度。
jQuery 代码:
$("<input>", {
type: "text",
val: "Test",
focusin: function() {
$(this).addClass("active");
},
focusout: function() {
$(this).removeClass("active");
}
}).appendTo("form");
以上是关于jQuery(html,[ownerDocument])详解的主要内容,如果未能解决你的问题,请参考以下文章