Assuming that you don't have any additional weight on it - CD holder, paperwork, etc.
Might be able to squeeze the area closest to the pivot point with some taped up pliers. It is just friction holding that visor up (little piece of spring steel in there, pushing against the rod). On some visors I've worked on (older domestics) - you can pull the visor off the rod, squeeze that piece of spring steel inside, then shove the whole works back in.
If that doesn't work and the visor just flops - either have to just replace it outright or try and get creative with some rubber cement to try and intentionally gum up that hinge, and/or use velcro stuck to visor and the headline (used that on a truck). Some have been able jam stuff in there to snug it up - toothpicks, nails, etc.
For replacing it - you should be able to get a new one relatively inexpensively - dealership, aftermarket, ebay, etc. or can get one from a pick-and-pull yard for really cheap.