Step 1: Set up the present ages.
Let the common multiple be $x$. Then A is $5x$ and B is $7x$ right now, because their ratio is $5:7$.
Step 2: Add 8 years to each age.
After $8$ years, A becomes $5x + 8$ and B becomes $7x + 8$.
Step 3: Use the new ratio.
We are told the new ratio is $7:9$, so \[ \frac{5x+8}{7x+8} = \frac{7}{9} \]
Step 4: Cross multiply.
$9(5x+8) = 7(7x+8)$, which gives $45x + 72 = 49x + 56$.
Step 5: Solve for x.
Bring like terms together, $72 - 56 = 49x - 45x$, so $16 = 4x$ and $x = 4$.
Step 6: Find B's present age.
B is $7x$, so $7 \times 4 = 28$.
Step 7: State the answer.
B is $28$ years old today. \[ \boxed{28 \text{ years}} \]