更改图像上的内联背景颜色的jquery事件

时间:2013-04-29 00:05:07

标签: javascript jquery css

我需要帮助检测颜色选择器在“img”标签上的背景颜色内嵌的更改事件。

例如,我有这段代码:

<span class="ui-button-text">
<img id="cp-background" src="transparent.png" style="background-color: rgb(100, 100, 90);"></img>
</span>

我需要检测是否使用Jquery更改了style =“backgroung-color”。

我试过这段代码,但我没有成功:

$("#ok-cp-background").data('bgcolor', $this.css('background-color')).change(function(){
     alert("Changed");
});

有人可以帮助我吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

我认为简单的解决方案是使用.trigger()函数。您附加事件侦听器的脚本:

$("#cp-background").on("styleChanged",function(event, propertyName){

});

扩展$ .css()函数以调用trigger()

(function($)
{
    var oldcss = $.fn.css;
    $.fn.css = function()
    {
        var ret = oldcss.apply(this, arguments);
        if (arguments.length > 1){ //to ensure this function is called to assign a new style.
            this.trigger("styleChanged",arguments);
        }
        return ret;
    };
})(jQuery);

在颜色选择器代码中,使用.css()更改背景颜色。