There is no "background color" in the marker. What we see is a .png image that belongs to a L.Icon object, which in turn is associated with the L.Marker object. The default icon has the image you have shown:
http://leafletjs.com/dist/images/marker-icon.pngSo to change the "background of the marker" when the user clicks on it, you first have to edit the .png image, then create a new L.Icon and give to it the edited image in the "iconUrl" option. Then is just a matter of subscribing to the click event and use the setIcon method.
For a related subject, see this issue:
https://github.com/CloudMade/Leaflet/issues/1073