如何在 JavaScript 中获取 div 的边框宽度/颜色?

发布于 2024-11-05 04:19:08 字数 259 浏览 0 评论 0原文

我想检测 div 是否有边框。如果是这样,我想将边框颜色更改为灰色。这是我的代码,但不起作用。

var ele = document.get...;
if(ele.style.borderColor)
{
   ele.style.borderColor='666666';
}

ele.style.borderColor 始终为 null。 顺便说一句,我不能在这里使用 JQuery。 有人可以帮忙吗?

I'd like to detect if a div has border. If so, I'd like to change the border color to gray. Here's my code but does not work.

var ele = document.get...;
if(ele.style.borderColor)
{
   ele.style.borderColor='666666';
}

The ele.style.borderColor is always null.
BTW, I can't use JQuery here.
Could someone help?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

几度春秋 2024-11-12 04:19:08
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';
}

jsFiddle

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';
}

jsFiddle.

娇纵 2024-11-12 04:19:08

您可以只设置边框颜色,而不尝试读取任何属性。

如果元素没有边框,则设置颜色不会产生任何效果。

You could just set the border color, and don't try to read any property.

If the element has no border, setting the color won't have any effect.

乖乖兔^ω^ 2024-11-12 04:19:08

您所犯的错误是您没有在颜色十六进制代码之前指定“#”符号
所以您必须进行一些更改:
ele.style.borderColor='#666666';

The error you have made is that you haven't specified the '#' sign before the color hex code
So You will have to make a little change:
ele.style.borderColor='#666666';

油焖大侠 2024-11-12 04:19:08

我认为您得到的是空值,因为您缺少属性中间的连字符。 “border-color”

因为你不能在这里使用 jquery,所以我会查看所有 css 边框属性来确定它是否有边框,例如 border-style、border-width 和 border-color。

I think you're getting a null because you are missing the hyphen in the middle of the property. "border-color"

Since you can't use jquery here I would look at all the css border properties to determine if it has a border such as border-style, border-width and border-color.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文