Di seguito è riportato uno snippet di codice per impostare il parametro importante per l'attributo di stile utilizzando jquery.
$.fn.setFixedStyle = function(styles){
var s = $(this).attr("style");
s = "{"+s.replace(/;/g,",").replace(/'|"/g,"");
s = s.substring(0,s.length-1)+"}";
s = s.replace(/,/g,"\",\"").replace(/{/g,"{\"").replace(/}/g,"\"}").replace(/:/g,"\":\"");
var stOb = JSON.parse(s),st;
if(!styles){
$.each(stOb,function(k,v){
stOb[k] +=" !important";
});
}
else{
$.each(styles,function(k,v){
if(v.length>0){
stOb[k] = v+" !important";
}else{
stOb[k] += " !important";
}
});
}
var ns = JSON.stringify(stOb);
$(this).attr("style",ns.replace(/"|{|}/g,"").replace(/,/g,";"));
};
L'utilizzo è piuttosto semplice: basta passare un oggetto contenente tutti gli attributi che si desidera impostare come importanti.
$("#i1").setFixedStyle({"width":"50px","height":""});
Ci sono due opzioni aggiuntive.
1.Per aggiungere semplicemente un parametro importante all'attributo di stile già presente, passare una stringa vuota.
2.Per aggiungere parametri importanti per tutti gli attributi presenti, non passare nulla. Imposterà tutti gli attributi come importanti.
Eccolo dal vivo in azione. http://codepen.io/agaase/pen/nkvjr