16 Apr 2006, 16:57 UTC

Prototype1.4.0说明文档showLocalLinks例子有问题

链接在这里:http://www.sergiopereira.com/articles/prototype.js.html#EnumeratingArrays

这个showLocalLinks例子有问题,在哪个浏览器里都显示不出结果。

<script> function showLocalLinks(paragraph){ paragraph = $(paragraph); var links = $A(paragraph.getElementsByTagName('a')); //find links that do not start with 'http' var localLinks = links.findAll( function(link){ var start = link.href.substring(0,4); return start !='http'; }); //now the link texts var texts = localLinks.pluck('innerHTML'); //get them in a single string var result = texts.inspect(); alert(result); }



This text has
a lot of
links. Some are
external
and some are local


这个例子的意思应该是取出段落里面的本地链接,原理是链接开头不是http的就算,但是段落里面使用的#链接形式,无论在IE还是firefox里,都会被解释为带有http的形式,所以这个例子的结果永远都是空。

解决方法是把其中#开头的链接改为”javascript:;“,就可以看到效果了。

后话,也有可能是因为我用Apache调试的原因,#xxx全被解释为”http://localhost/#xxx"了。

Technorati : Prototype, javascript

comments powered by Disqus