jQuery~DOM基础操作
操作DOM
1.什么是DOM:document object model文档对象模型
2.树形结构
3.什么是节点(node):DOM结构中最小单位,元素、文本、属性。。。
创建节点
var $div = $("<div title='div盒子'>我是DOM</div>")
$("body").append($div);
1。插入
var str = $("<a href='#'>123</a>");
str.appendTo($("div"));
("A").append("B")等效("B").appendTo("A")
a.内容插入:(子集)
append():向元素内容增加内容(末尾)
append():向元素内部增加内容(末尾)
appendTo():将要增加的内容增加到元素中
prepend():向元素内部增加内容(前置)
$("div").prepend(str);
prependTo():将要增加的内容增加到元素中
str.prependTo($("div"));
("A").prepend("B")等效("B").prependTo("A")
b.外部插入:(同级)
after():在元素后面插入内容
$("div").after(str);
insertAfter():在内容插入元素后面
str.insertAfter($("div"));
A.after(B)等效于B.insertAfter(A);
before():在元素前面插入内容
$("div").before(str);
insertBefore():将内容插入元素前面
str.insertBefore($("div"));
A.before(B)等效于B.insertBefore(A);
2删除
a.删除
remove():删除匹配元素
$("div").remove();
$("div").remove(":eq(0)");
b.清空
empty():清空子节点内容
$("div").empty();//不支持参数
3.克隆:创建指定节点的副本
clone()
<b>b</b>
<p>p</p>
<script>
$("b").clone().prependTo("p");
//将b拷贝出来放到p内部前面
//或
$("b").click(function(){
// 在clone方法参数中输入 false | true
$(this).clone().insertAfter(this);
});
</script>
默认为假,假表示不复制;真true:表示复制事件
4.替换:
replaceWith():
<b>0</b>
<b>1</b>
<b>2</b>
<script>
// i标签不存在,则直接把b下标1的元素替换掉
$("b:eq(1)").replaceWith("<i>x</i>");
// 下标0存在,和下标2替换,相当于2删掉,0移到2的位置
$("b:eq(2)").replaceWith($("b:eq(0)"))
</script>
replaceAll():用来匹配元素替换成指定元素
//"<i>x</i>".replaceAll("b");这种jq方法必须在jq对象下使用。
$("<i>x</i>").replaceAll("b");
a.replaceWith(b) 等效于 b.replaceAll(a);
动画
JavaScript语言本身不支持动画设计,必须通过改变CSS来实现动画效果。
1.显隐动画
原理:
hide()隐藏。通过改变元素的高度宽度和不透明度,直到这三个属性值到0
show()显示。从上到下增加元素的高度,从透明度左到右增加元素的宽度,从0到1增加透明度,直至内容完全可见
参数:
show()
show(speed,callback)
speed:字符串或数字,表示动画将运行多久(slow=0.6秒/normal=0.4/fast=0.2)//单位是毫秒
callback:动画完成时执行的方法(回调函数)
显示和隐藏是一对密不可分的动画形式。
2.显隐切换
toggle():切换元素的可见状态
原理:匹配元素的高度、高度以及不透明度,同时进行动画,隐藏动画后将display设置为none
参数:
toggle(speed,callback);
toggle(boolean)
boolean:true为显示false为隐藏
<style>
*{padding:0;margin:0;}
div{ width:300px; height:300px; background:skyblue;}
</style>
<input type="button" value="show" />
<input type="button" value="hide" />
<input type="button" value="toggle" />
<div></div>
<script src="../jquery‐1.11.3.js"></script>
<script>
$(function(){
$("input:eq(0)").click(function(){
$("div").show(3000, function(){alert()});
});
$("input:eq(1)").click(function(){
$("div").hide(3000);
});
$("input:eq(2)").click(function(){
$("div").toggle(3000);
});
});
</script>
滑动
1.显隐滑动效果
slideDown():滑动显示
slideUp():滑动隐藏
参数:
slideDown(speed,callback)
slideUp(speed,callback)
2.显隐切换滑动
slideToggle():显隐滑动切换
参数:
slidecToggle(speed, callback)
<style>
*{padding:0;margin:0;}
div{ width:300px; height:300px; background:skyblue;}
</style>
<input type="button" value="slideDown" />
<input type="button" value="slideUp" />
<input type="button" value="slideToggle" />
<div></div>
<script>
$(function(){
$("input:eq(0)").click(function(){
$("div").slideDown(1500, function(){alert()});
});
$("input:eq(1)").click(function(){
$("div").slideUp(1500);
});
$("input:eq(2)").click(function(){
$("div").slideToggle(1500);
});
});
</script>
渐变:通过改变不透明度
1. 淡入淡出
fadeIn()
fadeOut()
参数:
fadeIn(speed, callback)
fadeOut(speed, callback)
2. 设置淡出透明效果
fadeTo() :以渐进的方式调整到指定透明度
参数:
fadeTo(speed, opacity, callback)
3.渐变切换:结合fadeIn和fadeOut
fadeToggle()
参数:
fadeOut(speed, callback)
<style>
*{padding:0;margin:0;}
div{ width:300px; height:300px; background:skyblue;}
</style>
<input type="button" value="fadeIn" />
<input type="button" value="fadeOut" />
<input type="button" value="fadeToggle" />
<input type="button" value="fadeTo" />
<div></div>
<script>
$(function(){
$("input:eq(0)").click(function(){
$("div").fadeIn(1500, function(){alert()});
});
$("input:eq(1)").click(function(){
$("div").fadeOut(1500);
});
$("input:eq(2)").click(function(){
$("div").fadeToggle(1500);
});
$("input:eq(3)").click(function(){
$("div").fadeTo(1500, 0.5);
});
});
</script>
自定义:
1. 自定义动画:animate()
$("input:eq(0)").click(function(){
$("div").animate({
width:400,
height:200,
borderLeftWidth:10,
borderBottomLeftRadius:250
}, 1500, function(){alert('该动画效果1500毫秒执行完毕')});
});
jQuery~DOM基础操作的更多相关文章
- jQuery DOM基础
jQuery DOM基础 1.对元素内容的获取和修改: 表单用value(),普通元素用html()和text(). html() html(value)设置和获取html内容,有html标签会自动 ...
- 深度解析JQuery Dom元素操作技巧
深度解析JQuery Dom元素操作技巧 DOM是一种与浏览器.平台.语言无关的接口,使用该接口可以轻松访问页面中所有的标准组件,这篇文章给大家介绍了JQuery dom元素操作方法,写的十分的全面细 ...
- JavaScript DOM 基础操作
JavaScript DOM 基础操作 一.获取元素的六方式 document.getElementById('id名称') //根据id名称获取 document.getElementsByclas ...
- jQuery自学笔记(四):jQuery DOM节点操作
获得和设置内容:text( ).html( ) 以及 val( ) text( ) - 设置或返回所选元素的文本内容 html( ) - 设置或返回所选元素的内容(包括 HTML 标记) val( ) ...
- JavaScript学习 - 基础(六) - DOM基础操作
DOM: DOM定义了访问HTML 和XML 文档的标准:1.核心DOM 针对结构化文档的标准模型2.XMK DOM 针对XML文档的标准模型3.HTML DOM 针对HTML文档的标准模型 DOM节 ...
- javascript DOM基础操作
DOM(Document Object Model)即文档对象模型,针对HTML和XML文档的API(应用程序接口).DOM描绘了一个层次化的节点树,运行开发人员添加.移除和修改页面的某一部分.DOM ...
- DOM基础操作实战代码
对于已经讲解给大家的DOM实战,我今天给大家几个实战代码,可以让大家加深对此的理解! 1.用DOM动态生成这样一个结构: <div class=”example”> <p class ...
- DOM基础操作(三)
DOM剩余的两个操作一并带来! 1.删除操作 removeChild 这个方法依然是父级调用的,参数就是要删除的子节点,其实实际上是剪切,这个方法会把我们删除掉的元素给返回,我们可以用一个变量去保存这 ...
- DOM基础操作(二)
插入操作 1.appendChild(child); 这个是父级调用的方法,它会将child元素插入到父级里面,而且是放到逻辑后面的位置上. div.appendChild(comment); ...
随机推荐
- MyBatis实战之映射器
映射器是MyBatis最强大的工具,也是我们使用MyBatis时用得最多的工具,因此熟练掌握它十分必要.MyBatis是针对映射器构造的SQL构建的轻量级框架,并且通过配置生成对应的JavaBean返 ...
- android 解决小米手机上选择照片路径为null情况
昨天测试帅哥说他手机选择图库崩溃了,这是一个上传头像的功能,相信很多应用都有这个功能,于是我就把手机拿过来打log看了下返回的路径 为null,在网上搜索了下解决方案,现在把解决方案记录下: 这是在o ...
- Block abstraction view(Create & Reference)
在hierarchical design 中,一般需要调用 hard macro,top调用 macro 的方法有多种: 1. 调用macro对应的db 2. 调用 macro 的 ilm 模型(20 ...
- Python2.7-filecmp
filecmp 模块,定义了比较文件或目录的函数,比较文件只会有 True 和 False 两种结果,比较目录会返回目录下相同的文件,不同的文件,出错的文件.比较文件也可以用 difflib 模块,d ...
- java过滤器filter使用
一:filter:过滤器,拦截servlet的请求和响应. 1. package jd.com.filter; import javax.servlet.*; import java.io.IOExc ...
- CentOS配置Hive
hive搭建共分为三种模式:1.embedded,2.local,3.remote server 在这里,主要是配置第3种模式:remote server模式,如下图所示: 我的环境共三台虚拟机:Ho ...
- 微信web开发的上传图片js接口
$('.chooseImage').click(function(){ wx.chooseImage({ count: pic_num, // 默认9,大于9也是显示9 sizeType: ['com ...
- Scala--数组相关操作
一.定长数组 Array定长数组,访问数组元素需要通过() 数组长度是固定的,但是内容可以修改 val nums = new Array[Int](10) //长度为10的int数组 初始化为0 v ...
- spark-windows(含eclipse配置)下本地开发环境搭建
spark-windows(含eclipse配置)下本地开发环境搭建 >>>>>>注意:这里忽略JDK的安装,JDK要求是1.8及以上版本,请通过 java ...
- 20155209林虹宇逆向及Bof基础实验报告
20155209林虹宇逆向及Bof基础实验报告 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符 ...