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& ...
随机推荐
- ps 指令
ps显示系统当前进程信息, ps 存在多个版本,因此 ps options 的种类繁多.这里只列举平时开发过程中常用的命令,如果有错误或者更好的例子.烦请在评论区指出 语法 ps [options] ...
- Docker 方式部署的应用的版本更新
前言 公司使用 Docker-Compose 的方式部署 Jenkins/Gitlab/Sonar/Confluence/Apollo/Harbor/ELK/MySQL 等一系列开发工具/数据库. 而 ...
- 怎样获取当前页面框架的数量(即iframe和frame的数量)
需要使用window.length, 或者window.frames.length; 如果页面中不包含frame和iframe元素, 则返回0; window.length === window.fr ...
- Extjs 兼容IE8常见问题及解决方法
1. 在IE8中整个页面都打不开,一般情况是: 页面组件中最后一个属性出现了逗号 没有多余的逗号,就很有可能是组件中没有设置renderTo:Ext.getBody(); 2. 页面按钮颜色失效 自定 ...
- JS如何做爬虫
JS如何做爬虫,JS做爬虫要靠node节点环境,cheerio(主要是解析下载的网页可以像jquery一样,这是必要的,使用它在npm上查看文档也很简单). Iconv-lite(主要解决下载资源的乱 ...
- Java 之 递归
一.概述 递归:指在当前方法内调用自己的现象. 递归的分类: 递归分为两种,直接递归和简介递归 直接递归称为方法自身调用自己 间接递归可以 A 方法调用 B 方法,B 方法调用 C 方法,C 方法调用 ...
- lumen中安装及使用redis作为cache
1.安装redis模块在compose.json的require中添加 "predis/predis": "*","illuminate/redi ...
- java,单文件和多文件上传代码范例
上传一个单文件,用request.getFile得到文件(下面的功能是上传到阿里云) @RequestMapping(value = {"/content"}, method = ...
- Hadoop安装-单机-伪分布式简单部署配置
最近在搞大数据项目支持所以有时间写下hadoop随笔吧. 环境介绍: Linux: centos7 jdk:java version "1.8.0_181 hadoop:hadoop-3.2 ...
- nginx实现fastcgi反向代理
实现FastCGI: CGI的由来:最早的Web服务器只能简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html文件,但是后期随着网站功能增多网站开发也越 ...