$S^m * S^n \approx S^{m+n+1}$
$S^m * S^n = (S^m \times S^n \times [0, 1])/\sim$ where $\sim$ identifies the top $S^m \times S^n \times \{0\}$ to $S^m$ and the bottom $S^m \times S^n \times \{1\}$ to $S^n$. Cutting this in half gives $$S^m * S^n = (S^m \times S^n \times [0, 1/2])/\!\!\sim \cup_{S^m \times S^n \times \{1/2\}}\; (S^m \times S^n \times [1/2, 1])/\!\!\sim$$
In the first piece, $\sim$ does nothing except pinching the copy of $S^m \times \{0\}$ to a point. Thus, the first piece is homeomorphic to $C(S^m) \times S^n \cong D^{m+1} \times S^n$. Similarly, $\sim$ just pinches the copy of $S^n \times \{0\}$ in the second piece, so that one is homeomorphic to $S^m \times C(S^n) \cong S^m \times D^{n+1}$. So the space is homeomorphic to
$$D^{m+1} \times S^n \cup_{S^m \times S^n} S^m \times D^{n+1} \cong D^{m+1} \times \partial(D^{n+1}) \cup_\partial \partial(D^{m+1}) \times D^{n+1} \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\; \cong \partial(D^{m+1} \times D^{n+1}) \\ \;\;\;\;\;\;\ \cong \partial(D^{m+n+2})$$
Which is just $S^{m+n+1}$ $\blacksquare$
Let $S^n \subset \mathbb R^{n+1}$ and $S^m\subset \mathbb R^{m+1}$, then we can consider that they are both in $\mathbb R^{n+m+2} \cong \mathbb R^{n+1} \oplus \mathbb R^{m+1}$. Then define the map
$$ \phi : \mathbb S^n \times [0,\pi/2] \times \mathbb S^m \to S^{n+m+1} \subset \mathbb R^{n+m+2}$$
by $\phi(a, t, b) = (\cos t) a + (\sin t) b$. This map descend to the quotient (still call) $\phi :S^n *S^m \to S^{n+m+1}$, which is bijective. Then as the domain is compact and the image is Hausdorff, $\phi$ is a homeomorphism. (This is essentially the idea given in your question)
There are other ways of defining the join $X=X_1*X_2$ with a topology. In Topology and Groupoids, Chapter 5, the analogy is taken with the join of two subsets of a high dimensional $\mathbb R^n$ by saying a point of the join is a formal sum $r_1x_1+r_2x_2$ where $x_i \in X_i$ and $r_1+r_2=1, r_1,r_2 \in [0,1]$, except that if $r_1$ or $r_2$ is $0$ then we ignore that term. There are partial functions $\xi_i:X \to [0,1], \eta_i:X \to X_i$ defined by $r_1x_1+r_2x_2 \mapsto r_i, r_1x_1 +r_2x_2 \mapsto x_i$, respectively. Here $\eta_i$ has domain $\xi_i^{-1}(0,1]$ . We give $X$ the initial topology with respect to these functions.
One advantage of using initial topologies here is that the join becomes associative.
A homeomorphism $S^p * S^q \to S^{p+q+1}$ is defined by $$rx+sy \mapsto (x\sin r\pi /2, y \sin s\pi /2). $$
This is related to this stackexchange answer and picture.