jQuery – 7.动态创建Dom、删除节点
动态创建Dom节点
3.prepend,在元素的开始添加元素。 prependTo。after,在元素之后添加元素(添加兄弟)。before:在元素之前添加元素(添加兄弟)。
删除节点
动态创建Dom节点
1.使用$(html字符串)来创建Dom节点,并且返回一个jQuery对象,然后调用append等方法将新创建的节点添加到其他节点(元素)中:
var link = $("<a href='http://www.baidu.com'>百度</a>");
$("div:first").append(link);
$()创建的就是一个jQuery对象,可以完全进行操作
var link = $("<a href='http://www.baidu.com'>百度</a>");
link.text("百毒");
$("div:first").append(link);
。getElementByid的问题
2.append方法用来在元素的末尾追加元素
案例:动态生成网站列表
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="Jqeury/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(function () {//判断页面上是否有table
$("input[value=提交]").click(function () {if ($("#tb").length > 0) {return;
}
var json = [
{ "name": "cnblog", "site": "http://www.cnblogs.com" },{ "name": "cnbeat", "site": "http://www.cnbeat.com" },{ "name": "qiushibaike", "site": "http://www.qiushibaike.com" }];
var $tb = $("<table id='tb' border='1' width='300'></table>");$("#d1").append($tb);$.each(json, function () {var $tr = $("<tr></tr>");$tb.append($tr);
var $td = $("<td><a href='" + this.site + "'>" + this.name + "</td>");$tr.append($td);
$td = $("<td>" + this.site + "</td>");$tr.append($td);
})
})
})
</script>
</head>
<body>
<div id="d1">11111</div>
<input type="button" value="提交" />
</body>
</html>
练习:输入员工,员工个数不确定(动态生成文本框)
创建出的元素没有append到界面之前是无法用选择器找到的,就像new一个对象
3.prepend,在元素的开始添加元素。 prependTo。
after,在元素之后添加元素(添加兄弟)。
before:在元素之前添加元素(添加兄弟)。
删除节点
(1)remove()删除选择的节点
案例:清空ul中的项,代码见备注。$(“ul li.testitem”).remove(); 删除ul下li中有testitem样式的元素。自杀。把找到的都删掉。
remove方法的返回值是被删除的节点对象,还可以继续使用被删除的节点。比如重新添加到其他节点下
var lis = $("#ulSite li").remove();
$("#ulSite2").append(lis); // $("#ulSite li").remove().appendTo($("#ulSite2"));
(2)empty()是将节点清空,清除节点的innerHTML,节点还在
案例:权限选择
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="Jqeury/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(function () {$("input[value='>']").click(function() {var $link = $("#all option:selected").remove().removeAttr("selected");$("#sel").append($link);//一行的效果
//$("#all option:selected").remove().removeAttr("selected").appendTo($("#sel"));//可以去掉remove(),达到一样的效果
//$("#all option:selected").removeAttr("selected").appendTo($("#sel"));});
})
</script>
</head>
<body>
<select id="all" size="5" multiple="multiple">
<option>查找</option>
<option>编辑</option>
<option>删除</option>
<option>添加</option>
</select>
<input type="button" value=">" />
<input type="button" value="<" />
<input type="button" value=">>" />
<input type="button" value="<<" />
<select id="sel" size="5" multiple="multiple">
</select>
</body>
</html>

练习:选美女。被悬浮行高亮显示(背景是红色),点击美女将它放到另一个的美女列表。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>4minute - 选美女</title>
<style type="text/css">
li {width: 150px;
cursor: pointer;
}
</style>
<script src="Jqeury/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(function () {$("#mv li").mousemove(function () {$(this).css("background-color", "yellow");}).mouseout(function () {$(this).css("background-color", "white");}).click(function () {//remove会移除对象的事件 [但不会移除样式]
$(this).remove().appendTo($("#cn")).css("background-color", "white");})
})
</script>
</head>
<body>
<ul id="mv">
<li>南智贤</li>
<li>金泫雅</li>
<li>权昭贤</li>
<li>许嘉允</li>
<li>全智允</li>
</ul>
<hr />
<ul id="cn">
</ul>
</body>
</html>
jQuery – 7.动态创建Dom、删除节点的更多相关文章
- DOM创建和删除节点、HTML DOM常用对象[转]
创建和删除节点:——核心DOM 1. 创建单个元素节点:3步: 1. 创建空元素节点对象: var elem=document.createElement("标 ...
- JS,Jquery,ExtJs不同脚本动态创建DOM对象
好久不来写东西了,这段时间太慢了,闲了下来看了几篇文章,觉得很好,同时也许咱们大家都能遇到,所以就把它记录下来... 简单使用JavaScript.JQuery.ExtJs进行DOM对象创建的测试,主 ...
- JS、JQuery和ExtJs动态创建DOM对象
做了个简单使用JavaScript.JQuery.ExtJs进行DOM对象创建的测试,主要是使用JavaScript.JQuery.ExtJs动态创建Table对象.动态Table数据填充.多选控制. ...
- JavaScript DOM编程基础精华02(window对象的属性,事件中的this,动态创建DOM,innerText和innerHTML)
window对象的属性1 window.location对象: window.location.href=‘’;//重新导航到新页面,可以取值,也可以赋值. window.location.reloa ...
- es6 Object.assign ECMAScript 6 笔记(六) ECMAScript 6 笔记(一) react入门——慕课网笔记 jquery中动态新增的元素节点无法触发事件解决办法 响应式图像 弹窗细节 微信浏览器——返回操作 Float 的那些事 Flex布局 HTML5 data-* 自定义属性 参数传递的四种形式
es6 Object.assign 目录 一.基本用法 二.用途 1. 为对象添加属性 2. 为对象添加方法 3. 克隆对象 4. 合并多个对象 5. 为属性指定默认值 三.浏览器支持 ES6 O ...
- Vue.js源码解析-Vue初始化流程之动态创建DOM
目录 前言 一._update 如何判断是初始化还是更新操作? 二.patch 2.1 patch 定义 2.2 初始化的 patch 三.createElm 动态创建DOM 3.1 创建组件节点 3 ...
- DOM – 7.动态创建DOM + 8.innerText innerHTML value
7.动态创建DOM 8.innerText innerHTML value 7+8 练习:案例:点击按钮动态增加网站列表,分两列,第一列为网站的名字,第二列为带网站超链接的网站名.增加三行常见网站 ...
- 动态创建dom元素
效果图如上所示: 思维nav:就相当于qq空间发表动态(说说),在输入框里输入内容,点击提交(发表),内容就呈现在下面的动态栏里.我这里是准备写一个招聘的app,大家可以随便想象下哪些情况会遇到动态创 ...
- jquery中动态新增的元素节点无法触发事件解决办法
在使用jquery中动态新增的元素节点时会发现添加的事件是无法触发的,我们下面就为各位来详细的介绍此问题的解决办法. 比如做一个ajax读取留言列表的时候,每条留言后面有个回复按钮,class为“re ...
随机推荐
- [转载]JavaEE学习篇之——JDBC详解
原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/26164629 目录1.摘要2.JDBC的使用步骤 1.注册驱动 只做一次 ...
- Java工程为什么要加一个biz层
biz是Business的缩写,实际上就是控制层(业务逻辑层).解释:控制层的主要作用就是协调model层和view层直接的调用和转换.能够有效的避免请求直接进行数据库内容调用,而忽略了逻辑处理的部分 ...
- PopupWindow事件分发冲突解决
这些为了点击非PopupWindow区域,PopupWindow会消失的,如果没有下面的代码的话,你会发现,当你把PopupWindow显示出来了,无论你按多少次后退键PopupWindow并不会关闭 ...
- Apache 无法启动
本人是做前端开发的,对后台程序不太熟悉,也就以前学过一点.net.但现在都忘记的差不多了.最近在公司,经理给了我一个管理工具dedecms,我刚开始看的时候完全不懂这是什么东西,之前都没听说过(本人见 ...
- innerHtml innerText textContent兼容性问题
innerHtml,innerText,textContentinnerHtml获取元素带标签的内容:innerText只获取元素的文本:火狐不支持innerText,支持textContent: / ...
- mac 下搭建php 编程环境全过程
1,打开终端, 设置root密码sudo passwd root输入密码 2, 安装 apachemac 自带apache 启动apachectl start重新启动apachectl restart ...
- 转:sql之left join、right join、inner join的区别
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...
- [转]IntelliJ Idea 常用快捷键 列表(实战终极总结!!!!)
IntelliJ Idea 常用快捷键 列表(实战终极总结!!!!) ntelliJ Idea 常用快捷键 列表(实战终极总结!!!!) 1. -----------自动代码-------- 常用的有 ...
- cf219d
树形dp #include <cstdio> #include <vector> using namespace std; #define D(x) const int INF ...
- checksum table 【转】
来自:http://dinglin.iteye.com/blog/1791922 有同学问到 checksum table在逻辑备份时候前后是否可以用于验证数据一致性.扩展一下发现有一些有趣的问题,比 ...