javascriptで:beforeや:afterなど擬似要素のプロパティや値を編集するには

直接編集することはできないので、
CSSルールを追加してやるといい(未検証)

function addCSSRule(selector, css) { 
 var sheets = document.styleSheets, 
  sheet = sheets[sheets.length - 1]; 
 
 if(sheet.insertRule) { 
  sheet.insertRule(selector + '{' +  css + '}', sheet.cssRules.length); 
 }else if(sheet.addRule) { 
  sheet.addRule(selector, css, -1); 
 } 
} 
 
addCSSRule('hoge:after', 'background: red');

参考サイト
http://w3q.jp/t/3571

14年3月9日 追記
chrome33
IE8testerで正常な動作を確認しました。

投稿者:

ayako0802

フロントエンドエンジニア