我正在浏览jquery attr(key,func(){})
示例
Jquery attr example使用attr(key,func)
来应用边框,但它没有为第一个表格标记应用边框。
首先我认为这是jquery libray / browser问题,但它在不同的浏览器和jquery版本上提供相同的结果
我也尝试了不同版本的jQuery库,但是
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html lang="en-US">
<head>
<title>An Example for testing | QcTutorials</title>
</head>
<head>
<title>The Selecter Example</title>
<script type="text/javascript" src="../../js/jquery.js">
</script>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$("table").attr("border", function(arr) {
return arr;
})
});
</script>
</head>
<body>
<table>
<tr>
<td>This is first table</td>
</tr>
</table>
<table>
<tr>
<td>This is second table</td>
</tr>
</table>
<table>
<tr>
<td>This is third table</td>
</tr>
</table>
</body>
</html>
答案 0 :(得分:3)
它呈现属性,因为值0
不可见。在.attr( attributeName, function )
中,函数的第一个参数是index
,因此第一个表的设置为0
。然后1
,2
.....
$(document).ready(function() {
$("table").attr("border", function(index, value) {
return index + 1;
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>This is first table</td>
</tr>
</table>
<table>
<tr>
<td>This is second table</td>
</tr>
</table>
<table>
<tr>
<td>This is third table</td>
</tr>
</table>