Injicēt jaunus CSS noteikumus CSS-triki

Anonim

Ja jums ir jāmaina elementa stils ar JavaScript, parasti labāk ir mainīt klases nosaukumu, lai CSS, kas jau atrodas lapā, stātos spēkā un mainītu stilu. Tomēr katram noteikumam ir izņēmumi. Piemēram, jūs varētu vēlēties programmatiski mainīt pseidoklasi (piemēram :hover). Izmantojot JavaScript, tā paša iemesla dēļ iekšējie style=""atribūti nevar mainīt pseidoklases.

Jums lapā būs jāinjicē jauns elements ar pareiziem stiliem. Vislabāk to injicēt lapas apakšdaļā, lai tas ignorētu jūsu CSS virs tā. Viegli ar jQuery:

function injectStyles(rule) ( var div = $(" ", ( html: '-' + rule + '' )).appendTo("body"); )

Lietošana

injectStyles('a:hover ( color: red; )');

Demonstrācija

Vairāk informācijas

  • Stila injekcijas dīvainības ir IE (Ryan Seddon).
  • Stack Pārpildes pavediens.