批改状态:合格
老师批语:
一、attr用法实例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>1.属性与自定义属性操作:attr()和removeAttr()</title>
</head>
<body>
<img src="./images/q2.jpg" width="200" alt="食品" title="卫龙" id="pic" data-nation="中国">
</body>
</html>
<script type="text/javascript" src="./js/jquery-3.3.1.js"></script>
<script type="text/javascript">
// 1. attr():元素属性的获取与设置
//必须传参
// var res = $('img').attr()
//单参数为获取:当前属性的值
var res = $('#pic').attr('src')
//双参数为获取,第一个是属性名,第二个是要设置的新值
$('#pic').attr('src', './images/q2.jpg')
$('#pic').attr('style', 'border-radius: 50%;box-shadow:2px 6px 2px #888')
// 由此可见,attr()是典型的集读取器与设置器二合一的方法
//attr()可以获取到元素的自定义属性
//html5中,可以通过data-前缀给标签添加用户自定义属性
var res = $('#pic').attr('data-nation')
//attr()的属性值,还支持回调函数
$('#pic').attr('width', function(){return 100+100})
//注意: 回调返回的数值类型,会自动转为字符类型再赋值给width属性
var res = $('#pic').attr('width')
//2. removeAttr():删除元素的属性
//删除图片的内联样式属性style
// $('#pic').removeAttr('style')
//可以删除多个属性,多个属性之间用空格分开,返回当前元素的状态
var res = $('#pic').removeAttr('alt title data-nation')
//在控制台查看运行结果
console.log(res)
</script>点击 "运行实例" 按钮查看在线实例

二、attr实例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>5.设置内联样式css()</title>
<style type="text/css">
.box1 {
width: 300px;
height: 300px;
background-color: lightskyblue;
position: relative;
}
.box2 {
width: 100px;
height: 100px;
background-color: yellow;
position: absolute;
top: 60px;
left: 100px;
}
</style>
</head>
<body>
<img src="./images/q2.jpg">
<div class="box1">
<div class="box2"></div>
</div>
</body>
</html>
<script type="text/javascript" src="./js/jquery-3.3.1.js"></script>
<script type="text/javascript">
//1.设置样式 css(name,value)
var res = $('img').css('width',150)
var res = $('img').css('border-radius', '10%')
var res = $('img').css('box-shadow', '6px 6px 9px #888')
var res = $('img').css({
'width': '200',
'border-radius': '10%',
'box-shadow': '3px 12px 3px #888'
})
//2.读取样式 css(name),返回的都是字符串类型
var res = $('img').css('box-shadow')
var res = $('img').css('width')
//因为返回的是字符串,所以对于宽高等数据,如果要计算,就必须先转为数值型
var res = parseInt($('img').css('width'), 10) //200
res += 50
var res = $('img').css('width',res+'px')
//可以看出这样的操作是很麻烦的,但是宽高计算又使用的非常频繁
//所以jquery针对宽高样式有二个专用方法: width()和height()
//3.width()和height()方法
//将图片宽高设置为200,单位默认为px
var res = $('img').width(200)
var res = $('img').width('200')
var res = $('img').width('200px')
var res = $('img').width('200pt')
//等价于:
var res = $('img').css('width',200)
//设置宽高就更简单了,支持运算符的简写
var res = $('img').width('+=100')
var res = $('img').width() //300
//等价于:
var res = $('img').css('width','+=50')
var res = $('img').width() //250
//height()高度方法,用法与width()完全一致,请大家自行测试
// 除了宽高之年,获取元素当前的位置也是经常要用到的操作,jquery也定义了快捷方法
//4.获取元素的位置:offset(),返回的是一个对象
var res = $('img').offset()
//查询距离左边和顶部的偏移量
var res = $('img').offset().left
var res = $('img').offset().top
//可以看到这个操作反映的是元素在普通文档流的位置
//5.查看绝对定位元素的偏移量: position()
var res = $('.box2').position().left
var res = $('.box2').position().top
</script>点击 "运行实例" 按钮查看在线实例

手写代码:


Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号