I'm attempting to create a study tool for a page that allows a user to select any text on the page and click a button. This click then formats the selected text with a yellow background. I can make this work inside of a single tag, but if the range of selection is across multiple tags (for instance, the first LI in an unordered list along with half of the second), I have difficulty applying the style. I can't just wrap the selection with a span here unfortunately.

Basically, I want the effects associated with `contentEditable` and `execCommand` without actually making anything editable on the page except to apply a background color to the selected text with the click of a button. 

I'm open to jQuery solutions, and found [this plug-in](http://perplexed.co.uk/1020_text_selector_jquery_plugin.htm) that seems to simplify the ability to create ranges across browsers, but I was unable to use it to apply any formatting to the selected range. I can see from the console that it's picking up on the selection, but using something like:

```
var selected = $().selectedText();
$(selected).css("background-color","yellow");

```

has no effect.

Any help pointing me in the right direction would be greatly appreciated.