jQuery相关方法6----三大系列属性
一、获取和设置元素的宽和高------width( )方法和height()方法
<!-- 点击按钮,设置div的宽和高为原来的两倍 -->
<script src="http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js"></script>
<script>
$(function(){
//方法1:使用css方法获取宽高-------得到的是字符串类型的值
$("#btn1").click(function(){
var w=parseInt($("#dv").css("width"));
var h=parseInt($("#dv").css("height"));
$("#dv").css("width",w*2+"px");
$("#dv").css("height",h*2+"px");
});
//方法2:使用width()方法和height()方法获取宽高-----得到的是数字类型的值
//没有参数是是获取元素的宽和高
//有参数(可以是单纯的数字,也可以是字符串,比如 "300px")是设置元素的宽和高
$("#btn2").click(function(){
var w=$("#dv").width();
var h=$("#dv").height();
$("#dv").width(w*2);
$("#dv").height(h*2);
});
});
</script>
<input type="button" value="css设置" id="btn1">
<input type="button" value="wh设置" id="btn2">
<div id="dv" style="width: 200px;height: 200px;background: #ccc;"></div>

二、获取和设置元素的left和top值------offset()方法
<!-- 点击按钮,设置div的left和top为原来的两倍 -->
<script src="http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js"></script>
<script>
$(function(){
//方法1:使用css获取设置div的left和top---获取得到的是字符串类型,需要转化
$("#btn1").click(function(){
var l=parseInt($("#dv").css("left"));
var t=parseInt($("#dv").css("top"));
$("#dv").css("left",l*2+"px");
$("#dv").css("top",t*2+"px");
});
//方法2:使用offset()方法获取和设置div的left和top
//offset()获取的是一个对象,对象里面有两个属性,left和top
//注意offset的left和top属性的值是包括margin-left和margin-top的值
//offse()方法同样的,没有参数是获取,有参数(对象,键值对形式)是设置
$("#btn2").click(function(){
var l=$("#dv").offset().left;
var t=$("#dv").offset().top;//120
$("#dv").offset({"left":l*2,"top":t*2});
});
});
</script>
<input type="button" value="css设置" id="btn1">
<input type="button" value="offset设置" id="btn2">
<div id="dv" style="width: 200px;height: 200px;position: absolute;left: 50px;top: 50px; margin-top: 20px;background: #ccc;"></div>

三、获取元素的卷曲部分的距离-------scrollLeft()方法和scrollTop()方法
<!-- 实时获取卷曲出去的值 -->
<script src="http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js"></script>
<script>
$(function(){
$("#dv").scroll(function(){
var l=$(this).scrollLeft();
var t=$(this).scrollTop();
console.log("向左卷曲的值:"+l+"=====向上卷曲的值:"+t);
});
});
</script>
<div id="dv" style="width: 200px;height: 150px;background: #ccc;overflow: auto;">
秋雨一何碧,山色倚晴空。江南江北愁思,分付酒螺红。芦叶蓬舟千重,菰菜莼羹一梦,无语寄归鸿。醉眼渺河洛,遗恨夕阳中。
苹洲外,山欲暝,敛眉峰。人间俯仰陈迹,叹息两仙翁。不见当时杨柳,只是从前烟雨,磨灭几英雄。天地一孤啸,匹马又西风。
</div>

四、固定导航栏案例
<script src="http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js"></script>
<script>
$(function () {
//滚动事件
$(window).scroll(function () {
//如果向上卷曲的距离大于第一个div的高度
if ($(this).scrollTop() >= $("#nav").height()) {
//设置第二个div固定在页面的顶部
$("#navbar").css("position", "fixed");
$("#navbar").css("top", 0);
//设置第三个div的外边距,避免直接跳上去
$("#main").css("marginTop",$("#navbar").height());
} else {
//恢复
$("#navbar").css("position", "static");
$("#main").css("marginTop",0);
}
});
});
</script>
<div id="nav">设置了宽度100%,高度50px,红色背景</div>
<div id="navbar">设置了宽度100%,高度100px,黄色背景</div>
<div id="main">设置了宽度100%,高度1000px,蓝色背景</div>

jQuery相关方法6----三大系列属性的更多相关文章
- jQuery源码分析系列
声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://git ...
- [转]jQuery源码分析系列
文章转自:jQuery源码分析系列-Aaron 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAaro ...
- jQuery源码分析系列(转载来源Aaron.)
声明:非本文原创文章,转载来源原文链接Aaron. 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAa ...
- jQuery源码分析系列——来自Aaron
jQuery源码分析系列——来自Aaron 转载地址:http://www.cnblogs.com/aaronjs/p/3279314.html 版本截止到2013.8.24 jQuery官方发布最新 ...
- BOM 3.1 location对象 | history对象 | navigator对象 | 定时器 | 三大系列
JavaScript分三个部分: 1. ECMAScript标准---基本语法 2. DOM--->Document Object Model 文档对象模型,操作页面元素的 3. BOM---& ...
- JavaScript学习笔记5 之 计时器 & scroll、offset、client系列属性 & 图片无缝滚动
一.计时器 setInterval ( 函数/名称 , 毫秒数 )表示每经过一定的毫秒后,执行一次相应的函数(重复) setTimeout ( 函数/名称 , 毫秒数 ) 表示经过一定的毫秒后,只执行 ...
- 利用Jquery使用HTML5的FormData属性实现对文件的上传
1.利用Jquery使用HTML5的FormData属性实现对文件的上传 在HTML5以前我们如果需要实现文件上传服务器等功能的时候,有时候我们不得不依赖于FLASH去实现,而在HTML5到来之后,我 ...
- jquery】常用的jquery获取表单对象的属性与值
[jquery]常用的jquery获取表单对象的属性与值 1.JQuery的概念 JQuery是一个JavaScript的类库,这个类库集合了很多功能方法,利用类库你可以用一些简单的代码实现一些复杂的 ...
- jquery获取当前选项的属性值a
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
随机推荐
- I2C基础及时序
1.模式 标准模式:达到100Kb/S 快速模式:达到400Kb/S 2.连接图 3.协议 SDA.SCL在空闲的时候为高电平 重点!重点!重点! 4.涉及到多主机仲裁的竞争及时钟信号的同步
- 【并发】7、借助redis 实现多线程生产消费队列
1.这是第一个简单的初始化版本,看起来比使用fqueue似乎更好用 package queue.redisQueue; import queue.fqueue.vo.TempVo; import re ...
- C#委托,匿名方法,Lambda,泛型委托,表达式树代码示例
第一分钟:委托 有些教材,博客说到委托都会提到事件,虽然事件是委托的一个实例,但是为了理解起来更简单,今天只谈委托不谈事件.先上一段代码: 下边的代码,完成了一个委托应用的演示.一个委托分三个步骤: ...
- IClientMessageInspector IDispatchMessageInspector
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- canvas 绘制动态圆环进度条
由于使用的是vue开发,所以就展示一下绘制函数好了,上图是效果图 drawMain(drawing_elem, percent, forecolor, bgcolor) { /* @drawing_e ...
- element-ui 文件上传
<el-form-item> <el-upload ref="upload" class="upload-demo" :action=&quo ...
- TensorFlow实现Softmax Regression识别手写数字
本章已机器学习领域的Hello World任务----MNIST手写识别做为TensorFlow的开始.MNIST是一个非常简单的机器视觉数据集,是由几万张28像素*28像素的手写数字组成,这些图片只 ...
- ORA-00001:unique constraint violated解决
转自:https://www.2cto.com/database/201211/172340.html ORA-00001:unique constraint violated解决 今天往数据库中插入 ...
- [转]預防 Android Dex 64k Method Size Limit
转载自:http://ingramchen.io/blog/2014/09/prevention-of-android-dex-64k-method-size-limit.html 08 Septem ...
- 【前端开发】】ES6属性promise封装js动画
如下是我写的demo源码: 可以直接复制用浏览器打开看到效果哦: <!DOCTYPE html> <html> <head> <meta charset=&q ...