jquery-创建元素和添加子元素
一、创建新元素
1、使用$函数创建新元素
var $newElement=$('<div><p>段落</p></div>');//创建元素,返回jQuery对象
说明:
1)创建的新元素不会自动的把新元素插入到页面中,我们还需要明确的指定其插入到页面中的位置(比如使用append方法,指定
其插入位置为某个元素的最后一个子元素)
2)返回的jQuery对象中只包含html片段最顶层(外层)的元素,对于后代元素我们可以像处理页面中已有元素一样,使用
children或find方法访问 也就是说alert($newElement);的结果应为1
3)既然可以直接apend等方法插入html元素为何还要有这个创建新元素的功能?
使用$函数创建元素,是返回的是jQuery对象,我们可以使用jQuery对象里面的方法在创建的这个元素被插入到页面之前进行
各种操作比如进行绑定事件处理函数!
2、克隆已有的元素(通过克隆已有元素生成新元素)
使用clone方法以已有的元素(或者新创建的元素)为模子生成新元素
clone方法会复制jQuery对象内包含后代元素在内的所有元素
参数:
两个参数都是可选
第一个参数:
一个布尔值(true 或者 false)指示目标元素的事件处理函数以及关联数据是否会被复制
第二个参数(默认情况下与第一个参数一致):
一个布尔值,指示是否对克隆的元素的所有子元素的事件处理程序以及关联数据进行复制
二、添加子元素
1、append方法
在每个匹配元素内的 末尾处 插入参数内容
参数类型说明:
1)普通字符串(可包含各种html标签)
$('body').append('html字符串');
2)jQuery对象
①使用$函数创建的新元素(jQuery对象)
②使用$函数获取页面中已经有的元素(jQuery对象)
此时会将已有的元素移动到目标元素内,就是被剪切了
<script type="text/javascript">
$(function(){
$getParagraph=$("p");//运行后p段落会变成div的子元素
$("#oo").append($getParagraph);
}
);
</script> <p>段落</p>
<div id="oo">div</div>
③使用clone方法克隆页面中已经有的元素(jQuery对象)
$getParagraph=$("p").clone();//这样就避免了p段落会变成div的子元素
3)html元素对象、html元素对象数组
====以上类型的参数可传入多个,每个参数都会被插入到匹配元素!===
4)函数
有多少个匹配元素,这个函数就会执行多少次!
函数可以接受到两个参数:第一个是当前元素的序号、第二个是当前元素内的html
函数内部this代表当前的html元素对象
return 的数据就是插入的内容(可以为html元素,也可以是jQuery对象)
2、prepend方法
将参数内容插入到每个匹配元素内部的 最前面
使用方法及参数与append相同
3、appendTo方法
将匹配的元素插入到目标元素内部的最后面(同append)
与append区别:
使用时目标元素与插入内容的位置 颠倒
创建新元素返回的jQuery对象与
选择页面中已有元素返回的jQuery对象都可调用此方法(选择页面中已有元素表示将已有的元素移动到目标元素内)!
参数(表示要插入元素的目标位置):
Selector或者jQuery对象或者html元素对象/html元素对象数组
4、prependTo方法
将匹配的元素插入到目标元素内部的最前面(同prepend)
与prepend区别:
同上!
参数(表示要插入元素的目标位置):
同上!
jquery-创建元素和添加子元素的更多相关文章
- jQuery创建元素和添加子元素
var li = $("<li class=\"TopNav arrow\" secondMenu=\"menu_" + i + "\ ...
- jQuery如何获取动态添加的元素
1. 使用 on()方法 本质上使用了事件委派,将事件委派在父元素身上 自 jQuery 版本 1.7 起,on() 方法是 bind().live() 和 delegate() ...
- jQuery内容过滤选择器与子元素过滤选择器用法实例分析
jQuery选择器内容过滤 一.:contains(text) 选择器::contains(text)描述:匹配包含给定文本的元素返回值:元素集合 示例: ? 1 2 $("div.mini ...
- 【WPF】用代码给集合(Collection)容器动态添加子元素(Item)
需求:如何向 TabControl 中添加选项卡项. 问题:做的TabControl分页栏想要通过代码来控制添加的子元素.同理可以将解决思路拓展到用于其他的集合控件添加子元素的问题. 在布局文件She ...
- jquery层级原则器(匹配父元素下的子元素)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- AngularJs中,如何在父元素中调用子元素为自定义Directive中定义的函数?
最近一段时间准备使用AngularJs中的自定义Directive重构一下代码. 在这里说明一下,把自定义控件封装成Directive并不一定是要复用,而是要让代码结构更加清晰.就好像你将一个长方法拆 ...
- CSS实现父元素半透明,子元素不透明
CSS实现父元素半透明,子元素不透明. 很久以来大家都习惯使用opacity:0.5在新式浏览器里实现半透明,而对IE较旧的版本使用filter:Alpha(opacity=0.5)的滤镜来实现半透明 ...
- CSS父元素高度随子元素高度变化而变化
<html> <body> <head> <style> #menu{width:1000px;overfloat:hidden;} /* width: ...
- 父元素设置min-height子元素设置100%问题
问题:父元素设置min-height子元素高度设置100%取不到值,这是因为子元素 div设置 height:100%: 只有当父级元素满足min-height:1000px;设置的条件才触发: 浏览 ...
随机推荐
- Android Gradle 引用本地 AAR 的几种方式
折衷方案: 1.方式2 - 不完美解决办法2 2.再使用"自定义Gradle代码"来减轻重复设置的问题. 自定义Gradle代码如下: repositories { flatDir ...
- 使用PL/Scope分析PL/SQL代码
使用PL/Scope分析你的PL/SQL代码 从11g開始Oracle引入了PL/Scope 用于编译器收集PL/SQL程序单元的全部标识符(变量名.常量名.程序名等). 收集到的信息可通过一系列静态 ...
- C++ new操作符详解
一.new操作符的概念 我们通常讲的new是指的是new operator,其实还有另外两个概念,operator new 和 placement new. 1.new operator 我们在使用n ...
- linux学习(34):except的安装
expect据说是交互性很强的脚本语言,但是expect依赖于tcl,但linux系统里一般不自带安装tcl,需要手动安装 expect版本 5.43 http://download.chinauni ...
- mac下framework联编需要设置的
点击target,然后,在Build Phases里的空白处用鼠标点一下(艹 变态) 这时,点最上面菜单:Editor/Add Build Phases/Add Copy Files Build Ph ...
- vue的面包屑导航组件
用来将其放到navbar中: Breadcrumb/index.vue <template> <el-breadcrumb class="app-breadcrumb&qu ...
- Linux五种I/O模型性能分析
转载自:http://blog.csdn.net/jay900323/article/details/18141217/ socket阻塞与非阻塞,同步与异步 作者:huangguisu 1. 概念理 ...
- 简单的java程序
1.二分查找,java的输入与输出 package com; public class Firstapp{ public static void main(String args[]) { java. ...
- [uart]stty命令使用
中文解释链接:http://linux.51yip.com/search/stty 英文解释链接:http://pubs.opengroup.org/onlinepubs/9699919799/uti ...
- Windows下Postgresql数据库的下载与配置方法
注意下载的是二进制版,不是带Windows Installer的,即绿色版本 http://www.enterprisedb.com/products-services-training/pgbind ...