我想检测div是否有边框。如果是这样,我想将边框颜色更改为灰色。这是我的代码,但不起作用。
var ele = document.get...;
if(ele.style.borderColor)
{
ele.style.borderColor='666666';
}
ele.style.borderColor
始终为空。
顺便说一下,我不能在这里使用JQuery。
有人可以帮忙吗?
答案 0 :(得分:4)
var ele = document.getElementById('a'),
style = window.getComputedStyle(ele, null),
sides = ['top', 'right', 'bottom', 'left'],
maxBorder = 0;
for (var i = 0, length = sides.length; i < length; i++) {
maxBorder = Math.max(maxBorder, parseInt(style.getPropertyValue('border-' + sides[i] + '-width')));
}
if (maxBorder) {
ele.style.borderColor = '#666666';
}
答案 1 :(得分:1)
您可以设置边框颜色,不要尝试读取任何属性。
如果元素具有无边框,则设置颜色不会有任何影响。
答案 2 :(得分:1)
您所犯的错误是您没有在颜色十六进制代码之前指定“#”符号所以您必须做一些改动:
ele.style.borderColor='#666666';
答案 3 :(得分:0)
我认为你得到的是因为你错过了属性中间的连字符。 “边框颜色”
由于你不能在这里使用jquery,我会查看所有的css边框属性,以确定它是否有边框样式,边框宽度和边框颜色等边框。