今天使用JQuery獲取樣式中的background-color的值時發現在獲取到的顏色值在IE中與Chrome、Firefox顯示的格式不一樣,IE中是以HEX格式顯示【#ffff00】,而Chrome、Firefox中則是以GRB格式顯示【rgb(255,255,0)】,而我需要的是十六進制的顏色值,用於存儲到數據庫中,在網上找到下段代碼能解決此問題:
. 代碼如下:
$.fn.getHexBackgroundColor = function() {
var rgb = $(this).css('background-color');
if(!$.browser.msie){
rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
function hex(x) {
return ("0" + parseInt(x).toString(16)).slice(-2);
}
rgb= "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
}
return rgb;
}
這樣就都以HEX格式顯示了,已驗證通過.