I have some trivial JavaScript to effect a style change:
sel = document.getElementById(\'my_id\');
sel.className = sel.className.replace(/item-[1-9]-selected
This seems related to this: jQuery style not being applied in Safari
The solution suggested in the first response has worked well for me in these scenarios, namely: apply and remove a dummy class to the body after making the styling changes:
$('body').addClass('dummyclass').removeClass('dummyclass');
This forces safari to redraw.