javascript - Selecting and manipulating CSS pseudo-elements such as ::before and ::after using jQuery -


is there way select/manipulate css pseudo-elements such ::before , ::after (and old version 1 semi-colon) using jquery?

for example, stylesheet has following rule:

.span::after{ content:'foo' } 

how can change 'foo' 'bar' using jquery?

you pass content pseudo element data attribute , use jquery manipulate that:

in html:

<span>foo</span> 

in jquery:

$('span').hover(function(){     $(this).attr('data-content','bar'); }); 

in css:

span:after {     content: attr(data-content) ' other text may want'; } 

if want prevent 'other text' showing up, combine seucolega's solution this:

in html:

<span>foo</span> 

in jquery:

$('span').hover(function(){     $(this).addclass('change').attr('data-content','bar'); }); 

in css:

span.change:after {     content: attr(data-content) ' other text may want'; } 

Comments

Popular posts from this blog

php - How to add and update images or image url in Volusion using Volusion API -

javascript - jQuery UI Splitter/Resizable for unlimited amount of columns -

javascript - IE9 error '$'is not defined -