我们知道,利用锚点可以实现页面链接跳转,也可以实现同一页面内的跳转功能。
例如:
<a href="somepage.htm>某页面链接</a> 可以跳转链接到somepage.htm,<a href="#top">回顶端</a> 可以跳转到同一页面中,我们定义的锚点<a name="top"></a>所在位置。但有时我们发现,页内跳转不能用,这是怎么回事呢?今天我就碰到这样的问题。
最后经过我多次测试,终于找到了原因。请看如下代码:
< html > < head > < body leftmargin ="0" topmargin ="0" marginwidth ="0" marginheight ="0" > < table width ="500" border ="1" align ="center" cellpadding ="0" cellspacing ="3" > < tr > < td width ="690" >< a name ="top1" ></ a ></ td > </ tr > </ table > < CENTER > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < a href ="#top1" >到顶端 </ a > </ CENTER > </ body > </ html >
使用其中的“到顶端”链接,无法返回到页面顶端。
但是如果在<a name="top1"></a>前面加入一个 (即一个空格),该链接就可以用了。请看如下:
< html > < head > < body leftmargin ="0" topmargin ="0" marginwidth ="0" marginheight ="0" > < table width ="500" border ="1" align ="center" cellpadding ="0" cellspacing ="3" > < tr > < td width ="690" > < a name ="top1" ></ a ></ td > </ tr > </ table > < CENTER > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < P > 1 </ P >< P > </ P >< P > 11 </ P >< P > 111 </ P >< P > 1111 </ P >< P > 11111 </ P > < a href ="#top1" >到顶端 </ a > </ CENTER > </ body > </ html >
总结: 页内链接内,或其旁边,也必须有浏览器内的可见字符,浏览器才认为它有效(在IE6.0.3790.1830中测试结果如上)。 作为一点小小的经验,与大家共享。