<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>评论：解决站外链接代码的一个bug</title>
	<atom:link href="http://fxiao.com/2007/11/external-link-code-to-solve-a-bug/feed/" rel="self" type="application/rss+xml" />
	<link>http://fxiao.com/2007/11/external-link-code-to-solve-a-bug/</link>
	<description>龙 猫 要 努 力 ！</description>
	<lastBuildDate>Wed, 19 Aug 2009 12:19:56 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>来自：将幻想变为现实——让任意区域的所有链接在新窗口打开 &#124; 白鸽wordpress教学网</title>
		<link>http://fxiao.com/2007/11/external-link-code-to-solve-a-bug/comment-page-1/#comment-164</link>
		<dc:creator>将幻想变为现实——让任意区域的所有链接在新窗口打开 &#124; 白鸽wordpress教学网</dc:creator>
		<pubDate>Wed, 07 Nov 2007 19:03:55 +0000</pubDate>
		<guid isPermaLink="false">http://totoro.yo2.cn/archives/508678#comment-164</guid>
		<description>[...] 　　近期的读者可能会奇怪白鸽没有更新博客，这其实是因为买了台新的笔记本并步入了Vista时代，而上手Vista则着实花了白鸽几天的时间。 　　言归正传，上回《将幻想变为现实——让所有外部链接在新窗口打开》一文实现了所有外部链接在新窗口的打开的方法，博友Totoro则更进一步地《解决站外链接代码的一个bug 》，将其改进为只在新窗口打开非Javascript代码里的链接。不过，白鸽这回给大家带来一个更大的惊喜，那就是——让任意区域的所有链接在新窗口打开。 　　的确，如果只需要让某个区域的所有链接在新窗口打开，那么用上回那篇文章里的代码就有些太过于浪费了，因为我们可能只需要让侧边栏里的RSS挂件里的链接或是delicious的标签云里的链接在新窗口打开。不过这两种挂件使用的都是javascript代码，所以用常规的方法是无法让它们的链接在新窗口打开的。 　　首先在页面头部或是侧边栏文本里加入以下代码： &lt;script type=&quot;text/javascript&quot;&gt; &lt;!-- function setExternalLinkTarget() {&#160; &#160;&#160;&#160; // 获取页面上所有链接&#160; &#160;&#160;&#160; var allLinks = document.getElementById(&#039;newlink&#039;).getElementsByTagName(&#039;a&#039;);&#160; &#160;&#160;&#160; var len = allLinks.length; &#160; &#160;&#160;&#160; if(len &gt; 0) &#160;&#160;&#160; { &#160;&#160;&#160;&#160;&#160;&#160;&#160; var externalLink; &#160;&#160;&#160;&#160;&#160;&#160;&#160; for(i=0; i&lt;len; i++) &#160;&#160;&#160;&#160;&#160;&#160;&#160; { &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // 设置当前链接&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; externalLink = allLinks[i];&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // 设置 target 属性&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; externalLink.setAttribute(&#039;target&#039;, &#039;_blank&#039;);&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160; } &#160;&#160;&#160; } } &#160; window.onload = function() { &#160;&#160;&#160; setExternalLinkTarget(); } //--&gt;&#160; &lt;/script&gt; 　　接着在需要打开新窗口的任意区域对应的代码的最上面一行加上&lt;div id=&quot;newlink&quot;&gt;最下面一行加上&lt;/div&gt;即可。 　　比如白鸽右侧侧边栏上面的delicious标签云的代码如下： [...]</description>
		<content:encoded><![CDATA[<p>[...] 　　近期的读者可能会奇怪白鸽没有更新博客，这其实是因为买了台新的笔记本并步入了Vista时代，而上手Vista则着实花了白鸽几天的时间。 　　言归正传，上回《将幻想变为现实——让所有外部链接在新窗口打开》一文实现了所有外部链接在新窗口的打开的方法，博友Totoro则更进一步地《解决站外链接代码的一个bug 》，将其改进为只在新窗口打开非Javascript代码里的链接。不过，白鸽这回给大家带来一个更大的惊喜，那就是——让任意区域的所有链接在新窗口打开。 　　的确，如果只需要让某个区域的所有链接在新窗口打开，那么用上回那篇文章里的代码就有些太过于浪费了，因为我们可能只需要让侧边栏里的RSS挂件里的链接或是delicious的标签云里的链接在新窗口打开。不过这两种挂件使用的都是javascript代码，所以用常规的方法是无法让它们的链接在新窗口打开的。 　　首先在页面头部或是侧边栏文本里加入以下代码： &lt;script type=&#8221;text/javascript&#8221;&gt; &lt;!&#8211; function setExternalLinkTarget() {&nbsp; &nbsp;&nbsp;&nbsp; // 获取页面上所有链接&nbsp; &nbsp;&nbsp;&nbsp; var allLinks = document.getElementById(&#8217;newlink&#8217;).getElementsByTagName(&#8217;a');&nbsp; &nbsp;&nbsp;&nbsp; var len = allLinks.length; &nbsp; &nbsp;&nbsp;&nbsp; if(len &gt; 0) &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var externalLink; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=0; i&lt;len; i++) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 设置当前链接&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; externalLink = allLinks[i];&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 设置 target 属性&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; externalLink.setAttribute(&#8217;target&#8217;, &#8216;_blank&#8217;);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; } } &nbsp; window.onload = function() { &nbsp;&nbsp;&nbsp; setExternalLinkTarget(); } //&#8211;&gt;&nbsp; &lt;/script&gt; 　　接着在需要打开新窗口的任意区域对应的代码的最上面一行加上&lt;div id=&#8221;newlink&#8221;&gt;最下面一行加上&lt;/div&gt;即可。 　　比如白鸽右侧侧边栏上面的delicious标签云的代码如下： [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>来自：白鸽男孩</title>
		<link>http://fxiao.com/2007/11/external-link-code-to-solve-a-bug/comment-page-1/#comment-163</link>
		<dc:creator>白鸽男孩</dc:creator>
		<pubDate>Wed, 07 Nov 2007 14:08:13 +0000</pubDate>
		<guid isPermaLink="false">http://totoro.yo2.cn/archives/508678#comment-163</guid>
		<description>改得挺好，鼓个掌。不过白鸽还会让这段代码做更多的用途，嘿嘿。</description>
		<content:encoded><![CDATA[<p>改得挺好，鼓个掌。不过白鸽还会让这段代码做更多的用途，嘿嘿。</p>
]]></content:encoded>
	</item>
</channel>
</rss>
