JQuery UI тема для холста

Я использую холст в веб-приложении, построенном с помощью jquery ui. Я добавил виджет тематического ролика и хочу, чтобы элементы холста были тематическими. Итак, проблема, с которой я сталкиваюсь, заключается в том, как программно получить доступ к свойствам класса CSS, которые будут использоваться при рисовании объектов Canvas?

вот что я попробовал:

var color = $("<div></div>").addClass("ui-state-default").css("background-color");  

1 ответ

Решение

Понял. Элемент необходимо добавить в DOM.

function getClassProperty(clazz,prop,type){
    type = (type || false) ? type : "div";
    var dummy = $("<"+type+" style='display=none;'></"+type+">").addClass(clazz).appendTo("body");
    var value = dummy.css(prop);
    dummy.remove();
    if(value.indexOf("rgb") != -1){
        var digits = /(.*?)rgba?\((\d+),\s?(\d+),\s?(\d+)[\),]/.exec(value);
        return "#" + (parseInt(digits[4])|(parseInt(digits[3])<<8)|(parseInt(digits[2])<<16)).toString(16);
    }else{
        return value;
    }
}
console.log(getClassproperty("ui-state-default","background-color"));

Код rgb2hex взят из: http://haacked.com/archive/2009/12/29/convert-rgb-to-hex.aspx

Другие вопросы по тегам