聽“風格改變”事件有可能嗎?是否可以在jQuery中創建可以綁定到任何樣式更改的事件偵聽器?例如,如果我想在元素更改維度時“做”某件事,或者在樣式屬性中做任何其他更改,我可以這樣做:$('div').bind('style', function() {
console.log($(this).css('height'));});$('div').height(100); // yields '100'這將是非常有用的。有什么想法嗎?更新對不起,我自己回答了這個問題,但我寫了一個很好的解決方案,可能適合其他人:(function() {
var ev = new $.Event('style'),
orig = $.fn.css;
$.fn.css = function() {
$(this).trigger(ev);
return orig.apply(this, arguments);
}})();這將臨時覆蓋內部Prototype.css方法,并在最后用觸發器重新定義它。所以它是這樣工作的:$('p').bind('style', function(e) {
console.log( $(this).attr('style') );});$('p').width(100);$('p').css('color','red');
聽“風格改變”事件有可能嗎?
縹緲止盈
2019-07-03 15:43:24
