<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#w3s").attr("href", function(i,origValue){
return origValue + "/jquery";
});
});
});
</script>
</head>
<body>
<p><a href="http://www.w3school.com.cn" id="w3s">w3school.com.cn</a></p>
<button>改变 href 值</button>
<p>请把鼠标指针移动到链接上,或者点击该链接,来查看已经改变的 href 值。</p>
</body>
</html>
$(
"XXX"
).attr(
"属性名"
,fn(index,原属性值){});
这个是attr()的一种用法,fn中的index表示当前元素的索引值
//一般来说这个索引值对ID选择器用处不大
//因为涉及到索引,所以主要应用于类选择器、属性选择器这些经常返回对象集合或数组的选择器
//比如有html代码如下:
<div class="menu">菜单一</div>
<div class="menu">菜单二</div>
<div class="menu">菜单三</div>
<script>
$(function(){
//这个$(".menu")返回一个jQuery对象集合,共有3个元素
//这里面的index与$.each(function(index,element){})函数中的index一个意思
$(".menu").attr("id",function(index,origValue){
//当前集合有3个对象,也就代表这个函数方法会运行3次
//$(this)指向函数中的对象,使用$(this).index()与index同效果
return "menu"+index;
});
});
</script>
我简单点说。attr()回调函数,attr.("属性值",function(i,origValue){ return 一个你希望返回的新的属性值 });
其中i表示的当前列表下元素的下标,origValue表示对应下标的值