The secret to the in-channel kind, IMHO, is to follow the directions carefully. The felt-like strip inside the window channel actually has to get "crushed" by the in-channel visor, and it only gets crushed once the visor is installed and the window rolled up.
Some will attempt to install the visor, then repeatedly test that the window goes up and down. Invariably, what will happen is that one of the visors will bind, even if only a little. When binding, it will either break, get repositioned, or simply stress the adhesion of the tape.
The key, again, IMHO, is to seat the visor in the channel, roll up the window, and leave it up for the instructed 24 hours. The window pushing hard against the visor and the felt-like strip causes the strip to crush, and over that 24 hour period it tends to keep that crushed shape (memory). By not waiting the 24 hour period, the adhesive isn't as strong AND the felt strip isn't (more) permanantely crushed.
So is my theory.
Oh, that, and sometimes the leading edge of the in-channel visor, the edge that is hit first by the rising window, has to be beveled with a dremmel tool or similar. Sometimes that helps too.
TJR