我有以下代码。它工作正常,但我想知道第三行是否是最佳实践。当元素 myID 在页面上时,它的属性会发生变化。然而,它不是在每一页上,所以经常这无济于事。这对我来说似乎无害,但有什么我不知道的缺点吗?
$(document).ready(function () {
if ($(window).width() < 700) {
$('#myID').attr('size', 1)
}
});
我有以下代码。它工作正常,但我想知道第三行是否是最佳实践。当元素 myID 在页面上时,它的属性会发生变化。然而,它不是在每一页上,所以经常这无济于事。这对我来说似乎无害,但有什么我不知道的缺点吗?
$(document).ready(function () {
if ($(window).width() < 700) {
$('#myID').attr('size', 1)
}
});
.attr() 方法仅获取匹配集中第一个元素的属性值。要单独获取每个元素的值,请使用循环构造,例如 jQuery 的 .each() 或 .map() 方法。
该.attr()
方法尝试在 jquery 对象的第一个元素上设置属性。如果 jquery 对象为空,则什么也不会发生。
为了确定,您可以在对其执行任何操作之前检查对象是否存在
$(document).ready(function () {
if ($(window).width() < 700 && $('#myID').length) {
$('#myID').attr('size', 1);
}
});