使用.css()在IE中使用jQuery获取边框颜色

Ked*_*dor 12 css jquery internet-explorer border

在Internet Explorer中获取单击元素的边框颜色时出现问题.

$("#clickme").click(function() {
    alert($(this).css('border-color'));
});
Run Code Online (Sandbox Code Playgroud)

这是jsfiddle:http://jsfiddle.net/dS7mc/
它适用于chrome,但它在IE10中不起作用.

任何想法如何使它与两者兼容?也只改为"边框",在chrome中它给了我2px solid rgb(0, 0, 0)但是在我仍然得到空警报.

PS.是的,我尝试过"borderColor".在IE中也不起作用

Jam*_*lly 6

这是因为在Internet Explorer中没有border-color.该属性被重命名为border- pos -color:

border-top-color: #000000;
border-right-color: #000000;
border-bottom-color: #000000;
border-left-color: #000000;
Run Code Online (Sandbox Code Playgroud)

这同样适用于border-widthborder-style(border-left-width等).为了拉出边框颜色(假设所有4个都相同),你可以使用:

$(this).css('border-top-color');
Run Code Online (Sandbox Code Playgroud)

同样拉border-widthborder-style(再次假设所有4相等)你使用:

$(this).css('border-top-width');
$(this).css('border-top-style');
Run Code Online (Sandbox Code Playgroud)

您可以使用IE的F12开发人员工具找到元素具有的样式属性:

IE开发工具


Moh*_*dil 5

在IE8上试试这个..Works

$("#clickme").click(function() {
    $('body').append($(this).css('border-top-color'));
});
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

的jsfiddle

此外,浏览器以不同的方式返回颜色FireFox,Safari和Chrome将它们作为rgb()IE返回并返回它们,就像您在CSS使用速记符号(#f00vs #ff0000)时设置它们一样,Opera总是返回hexidecimal6位数的颜色