Hi Ian,
Inline links changed a bit in fancybox 1.3.4, the problem is the display:none.
You have to apply the display:none to the container div, like this, and not to the same element that has the ID:
<li id="menu-item-24" class="nbc">
<a class="fancybox" href="#NBC">NBC News</a>
<div style="display:none">
<object id="NBC" style="height: 390px; width: 640px">
<param name="movie" value="http://www.youtube.com/v/TmpelL6TXf0?version=3&feature=player_detailpage">
<param name="allowFullScreen" value="true">
<param name="allowScriptAccess" value="always">
<embed src="http://www.youtube.com/v/TmpelL6TXf0?version=3&feature=player_detailpage" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="360">
</object>
</div>
</li>
Note how i just moved the id="NBC" to the object tag, because there's no need to make two div containers.
You can find another example of this syntax at the end of this page: http://plugins.josepardilla.com/fancybox-for-wordpress/demos/