<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>散人笔记 &#187; contentWindow</title>
	<atom:link href="http://www.uideas.cn/post/tag/contentwindow/feed" rel="self" type="application/rss+xml" />
	<link>http://www.uideas.cn</link>
	<description>生活来源于创意,所以我懂生活</description>
	<lastBuildDate>Sun, 22 Aug 2010 07:17:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>js父页面操作的父子页面传值</title>
		<link>http://www.uideas.cn/post/246.html</link>
		<comments>http://www.uideas.cn/post/246.html#comments</comments>
		<pubDate>Wed, 24 Mar 2010 09:48:39 +0000</pubDate>
		<dc:creator>kos</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[contentWindow]]></category>
		<category><![CDATA[frames]]></category>
		<category><![CDATA[父子传值]]></category>

		<guid isPermaLink="false">http://www.uideas.cn/?p=246</guid>
		<description><![CDATA[　　对iframe来说,父页面访问子页面的方法用得最多的是XXX.contentWindow和frames[YYY]这样都可以得到子页面,区别在于,XXX对应的是iframe的id属性值,而YYY对应的是iframe的name属性值
看下面的例子:]]></description>
			<content:encoded><![CDATA[<p>　　对iframe来说,父页面访问子页面的方法用得最多的是XXX.contentWindow和frames[YYY]这样都可以得到子页面,区别在于,XXX对应的是iframe的id属性值,而YYY对应的是iframe的name属性值<br />
看下面的例子:<br />
<code><br />
&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;script language="javascript" type="text/javascript"&gt;<br />
&lt;!--<br />
function setValue(obj,iframe){<br />
 var $obj = getId(obj);<br />
 var $iframe = getId(iframe);<br />
 var getobj = $iframe.contentWindow.document.getElementById("getValue");<br />
 //var getobj = window.frames[iframe].document.getElementById("getValue");<br />
 if(!getobj){return}<br />
 else{<br />
  getobj.value = $obj.value;<br />
  }<br />
 }<br />
function getValue(obj,iframe){<br />
 var $obj = getId(obj);<br />
 var $iframe = getId(iframe);<br />
 var setobj = $iframe.contentWindow.document.getElementById("setValue");<br />
 //var setobj = window.frames[iframe].document.getElementById("setValue");<br />
 if(!setobj){return}<br />
 else{<br />
  $obj.value = setobj.value;<br />
  }<br />
 }</code><br />
然后再新建一个1.html里面加上一个<code>&lt;input name="" type="text" id="getValue"&gt;</code><br />
和2.html,里面加上<code>&lt;input name="" type="text" id="setValue"&gt;</code><br />
然后看看效果!~</p>
<p>function getId(id){<br />
 var $ = document.getElementById(id);<br />
 return $;<br />
 }</p>
<p>&#8211;&gt;<br />
&lt;/script&gt;<br />
&lt;/head&gt;</p>
<p>&lt;body&gt;<br />
&lt;a href=&#8221;1.html&#8221; target=&#8221;iframe1&#8243;&gt;跳到1.html&lt;/a&gt;<br />
&lt;a href=&#8221;2.html&#8221; target=&#8221;iframe1&#8243;&gt;跳到2.html&lt;/a&gt;&lt;br&gt;<br />
&lt;input name=&#8221;" type=&#8221;text&#8221; id=&#8221;parenttext&#8221; value=&#8221;把我传到子页面&#8221;&gt;<br />
&lt;input type=&#8221;button&#8221; value=&#8221;父传子&#8221; onClick=&#8221;setValue(&#8217;parenttext&#8217;,'iframe1&#8242;)&#8221;&gt;<br />
&lt;input type=&#8221;button&#8221; value=&#8221;子传父&#8221; onClick=&#8221;getValue(&#8217;parenttext&#8217;,'iframe1&#8242;)&#8221;&gt;&lt;br&gt;<br />
&lt;iframe id=&#8221;iframe1&#8243; name=&#8221;iframe1&#8243; frameborder=&#8221;0&#8243; scrolling=&#8221;0&#8243; style=&#8221;width:300px; height:150px; border:1px #009966 solid;&#8221; src=&#8221;1.html&#8221;&gt;&lt;/iframe&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.uideas.cn/post/246.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>通过js从父页面获取子页面的值</title>
		<link>http://www.uideas.cn/post/88.html</link>
		<comments>http://www.uideas.cn/post/88.html#comments</comments>
		<pubDate>Tue, 20 Oct 2009 09:23:36 +0000</pubDate>
		<dc:creator>kos</dc:creator>
				<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[contentWindow]]></category>
		<category><![CDATA[selection]]></category>
		<category><![CDATA[W3C标准]]></category>
		<category><![CDATA[传值]]></category>
		<category><![CDATA[子页面]]></category>

		<guid isPermaLink="false">http://uideas.cn/?p=88</guid>
		<description><![CDATA[　　通常在很多情况下都会遇到通过js来传值的问题，只要通过一些页面关联，他们的值就可以互相传递
其中应用框架的时候传值问题可能会遇到更多一些1、从父页面传值到子页面可能很容易办到，在很多情况下可以不通过js来传就可以达到目的，但从子页面把数据传给父页面就不是那么容易了……]]></description>
			<content:encoded><![CDATA[<p>　　通常在很多情况下都会遇到通过js来传值的问题，只要通过一些页面关联，他们的值就可以互相传递<br />
其中应用框架的时候传值问题可能会遇到更多一些</p>
<p>　　1、从父页面传值到子页面可能很容易办到，在很多情况下可以不通过js来传就可以达到目的，但从子页面把数据传给父页面就不是那么容易了，其实思路很简单，首先你要通过父页面找到子页面，按照W3C标准来，语法如下：<br />
document.getElementById(&#8221;iframe1&#8243;).contentWindow;<br />
取到子页面对象</p>
<p>　　2、此文为了达到一个很醒目的效果，做了一个很即时的例子，当鼠标选中子页面的任何文字的时候，父页面的text里面就把显示出来，通过getSelection和selection.createRange方法来实现，关于selection.createRange是只能在ie6上面能用，所以要加。</p>
<p>　　3、注：此实例牵涉到一个安全机制问题，以前很多浏览器都没考虑到过的，所以这个实例在一部分浏览器里面调试不起作用，但不用担心，你把代码放到自己的机子上试试，是得行的，也就是说这个跨服务器去执行这样的操作就会出问题。[与父子页面传值的问题，此博里面还有两篇文章，关注此问题的朋友可以去关注一下]</p>
<p>具体代码如下：</p>
<form enctype="application/x-www-form-urlencoded"><code></p>
<div class="Nodiv">
<div class="Notitle">CODE</div>
<div class="Nocontent"><textarea class="textarea" cols="20" rows="8">&lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&gt; &lt;title&gt;无标题文档&lt;/title&gt;  &lt;/head&gt;  &lt;body&gt; &lt;input type="text" id="text1"&gt;&lt;iframe src="http://www.uideas.cn/download/demo1.html" id="iframe1" name="iframe1" style="width:60%; height:60%;"&gt;&lt;/iframe&gt; &lt;/body&gt;  &lt;/html&gt; &lt;script language="JavaScript"&gt; var childHtml = document.getElementById("iframe1").contentWindow; var parentText = document.getElementById("text1"); var getValue = ""; if(childHtml.document.selection){ 	childHtml.document.onmouseup=function(){ 		parentText.value = childHtml.document.selection.createRange().text; 		} 	}else{ 		childHtml.onmouseup=function(){ 		parentText.value=childHtml.window.getSelection(); 		} 	} &lt;/script&gt;</textarea></div>
<div class="Nobutton">
<input onclick="RunCode(this)" type="button" value="运行代码" />
<input onclick="CopyCode(this)" type="button" value="复制代码" />
<input onclick="SaveCode(this)" type="button" value="保存代码" />
<span class="Nots">[Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]</span>
</div>
</div>
<p></code></form>
]]></content:encoded>
			<wfw:commentRss>http://www.uideas.cn/post/88.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
