为什么javascript获取不到写在css里面的属性?
比如有个<a>元素他的<styletype="text/css">里面定义了margin-top:10px;但我javascript就获取不到一定要在<a>后面写styl...
比如有个<a>元素
他的<style type="text/css">里面定义了margin-top:10px;
但我javascript就获取不到
一定要在<a>后面写style="margin-top:10px"这样才行
这是为什么? 展开
他的<style type="text/css">里面定义了margin-top:10px;
但我javascript就获取不到
一定要在<a>后面写style="margin-top:10px"这样才行
这是为什么? 展开
3个回答
展开全部
getStyle: function(element, style) {
element = $(element);
style = style == 'float' ? 'cssFloat' : style.camelize();
var value = element.style[style];
if (!value || value == 'auto') {
var css = document.defaultView.getComputedStyle(element, null);
value = css ? css[style] : null;
}
if (style == 'opacity') return value ? parseFloat(value) : 1.0;
return value == 'auto' ? null : value;
}
上面是prototype.js获得style的函数方法,你可以看到,它使用了
document.defaultView.getComputedStyle(element, null)来获得css,而不仅仅是element.style
总之是可以做到的,只要使用正确的方法。
element = $(element);
style = style == 'float' ? 'cssFloat' : style.camelize();
var value = element.style[style];
if (!value || value == 'auto') {
var css = document.defaultView.getComputedStyle(element, null);
value = css ? css[style] : null;
}
if (style == 'opacity') return value ? parseFloat(value) : 1.0;
return value == 'auto' ? null : value;
}
上面是prototype.js获得style的函数方法,你可以看到,它使用了
document.defaultView.getComputedStyle(element, null)来获得css,而不仅仅是element.style
总之是可以做到的,只要使用正确的方法。
展开全部
<html>
<head>
<style type="text/css">
.a_style
{
margin-top:10px;
}
</style>
</head>
<body>
<a href='' class='a_style' id='link1'>bbbb</a>
<script>
var lk = document.getElementById('link1');
var newValue = lk.style.margin-top;
alert(newValue);
lk.style.margin-top = '100px';
</script>
</body>
</html>
<head>
<style type="text/css">
.a_style
{
margin-top:10px;
}
</style>
</head>
<body>
<a href='' class='a_style' id='link1'>bbbb</a>
<script>
var lk = document.getElementById('link1');
var newValue = lk.style.margin-top;
alert(newValue);
lk.style.margin-top = '100px';
</script>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
估计是你不只有一个<a>标记吧。要么加一个class或者id在你需要的a中。或者从多个a标记的数组中获得你要的a标记
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询