[英]Returning the value of an attribute using jquery
<script>
$(document).ready(function () {
$("#target").click(function () {
alert($(this).attr("width"));
});
});
</script>
<style>
#target {
height:300px;
width:300px;
background-color:#0094ff;
}
</style>
<body>
<div id="target"></div>
</body>
我试图返回html元素的属性值。(这里:target(html元素)的width(attribute))。 但是它为我警告“未定义”。
你知道为什么吗?
$("#target").click(function () {
alert($(this).css("width"));
});
$("#target").click(function () {
alert($('#target').width()); //300: always returns integer as px unit
alert($('#target').css('width')); //300px: return width with string with suffix "px"
});
您不是要获取css height属性,而是要获取div的属性。 相反,您应该尝试使用.css(prop)
方法:
$(document).ready(function () {
$("#target").click(function () {
alert($(this).css("width"));
});
});
你的问题:
但是它为我警告“未定义”。 你知道为什么吗?!
正如我上面所写的,您正在尝试获取div的属性(在您的情况下不存在) :
<div id="target" width='500'></div>
<!---------------^^^this^^^-->
这就是#target
div的属性宽度。 这是发出undefined
警报的主要原因。
您要设置css的width属性而不是html属性(同样,供您参考,不建议使用html属性“ width”)来访问css属性width,请使用:
$("#target").click(function () {
alert($(this).css("width"));
});
试试这个可能对你有帮助
$(document).ready(function () {
$("#target").click(function () {
$(this).setAttribute("width", "480");
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.