?? day4_9.html
字號:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312-80">
<style type="text/css">
<!--
a:link { color: blue; text-decoration: none}
a:visited { color: purple; text-decoration: none}
a:hover { color: #CC0033; text-decoration: underline}
-->
</style>
<title>JavaScript高級教程</title>
<script language="JavaScript">
<!-- hide the script
function simpleSwap()
{
var the_image = prompt("change parrot or cheese","");
var the_image_name = "window.document." + the_image;
var the_image_object = eval(the_image_name);
the_image_object.src = "ant.gif";
}
// --> end hide
</script>
</head>
<body topmargin="1" leftmargin="2">
<table border="0" width="591" cellspacing="0">
<tr>
<td bgcolor="#ffff99" width="451">JavaScript高級教程 - 第四課</td>
</tr>
<tr>
<td bgcolor="#FF6600" width="451"><a href="mailto:thau@wired.com">Thau</a></td>
</tr>
</table>
<div align="left">
<table border="0" width="630" cellspacing="0">
<tr>
<td width="458" valign="top" align="left" rowspan="2"><small><small><br>
</small></small><strong>第九頁:<font size="3">獲取難以索引的對象</font></strong>
<p><font size="3"> </font></p>
<table border="0" width="447" cellpadding="0" cellspacing="0">
<tr>
<td width="447"><font size="3">文檔對象模型(</font><font face="helvetica, arial, sans-serif" size="3">DOM)</font><font size="3">的問題之一是</font><font face="helvetica, arial, sans-serif" size="3">:</font><font size="3">有時你要獲取你要求的<br>
對象簡直就是痛苦。例如,這里有一個函數詢問用戶要變換<br>
哪個圖象</font><font face="helvetica, arial, sans-serif" size="3">:</font><font size="3"><a href="#" onClick="simpleSwap(); return false;">變換哪個圖象</a></font></td>
</tr>
</table>
<p><font size="3"> </font></p>
<p align="center"><font size="3"><br>
<img src="parrot.gif" name="parrot" width="32" height="32"> <img src="cheese.gif" name="cheese" width="32" height="32">
</font></p>
<p><font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">你可以用下面這個函數:</font></p>
<blockquote>
<pre>
<font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">
</font><font face="verdana, arial, geneva, sans-serif" size="2">function swapOne()
{
var the_image = prompt("change parrot or cheese","");
var the_image_object;
if (the_image == "parrot")
{
the_image_object = window.document.parrot;
}
else {
the_image_object = window.document.cheese;
}
the_image_object.src = "ant.gif";
}
</font></pre>
</blockquote>
<p> <font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">連同這些</font><font face="verdana, arial, geneva, sans-serif" size="3">image</font><font size="3">標記</font><font face="verdana, arial, geneva, sans-serif" size="3">:
</font></p>
<font face="verdana, arial, geneva, sans-serif" size="3">
<blockquote>
<pre>
<img src="stuff3a/parrot.gif" name="parrot">
<img src="stuff3a/cheese.gif" name="cheese">
</pre>
</blockquote>
</font>
<p><font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">請注意象這樣的幾行語句:</font></p>
<blockquote>
<pre>
<font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">
</font><font face="verdana, arial, geneva, sans-serif" size="3">the_image_object = window.document.parrot;
</font></pre>
</blockquote>
<table border="0" width="461" cellpadding="0" cellspacing="0">
<tr>
<td width="461"> <font face="verdana, arial, geneva, sans-serif" size="3">
<font face="helvetica, arial, sans-serif" size="2"></font></font><font size="3">
<script language="JavaScript">
<!-- hide the script
function simpleSwap()
{
var the_image = prompt("change parrot or cheese","");
var the_image_name = "window.document." + the_image;
var the_image_object = eval(the_image_name);
the_image_object.src = "http://static.wired.com/webmonkey/98/29/stuff3a/ant.gif";
}
// --> end hide </script>
它把一個鸚鵡圖象對象敷給了一個變量。雖然看起來有點<br>
兒奇怪,它在語法上卻毫無問題。但當你有</font><font face="verdana, arial, geneva, sans-serif" size="3">100</font><font size="3">個而不是兩個<br>
圖象時怎么辦?你只好寫上一大堆的 </font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>if-then-else</tt></font><font size="3">語句,要是<br>
能象這樣就好了:</font></td>
</tr>
</table>
<p><font size="3"> </font></p>
<blockquote>
<pre>
<font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">
</font><font face="verdana, arial, geneva, sans-serif" size="2">function swapTwo()
{
var the_image = prompt("change parrot or cheese","");
window.document.the_image.src = "ant.gif";
}</font>
</pre>
</blockquote>
<table border="0" width="465" cellpadding="0" cellspacing="0">
<tr>
<td width="465"> <font face="verdana, arial, geneva, sans-serif" size="3">
<font face="helvetica, arial, sans-serif" size="2"></font></font><font size="3">不幸的是</font><font face="verdana, arial, geneva, sans-serif" size="3">,
JavaScript</font><font size="3">將會尋找名字叫 </font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>the_image</tt></font><font size="3">而不是你所希<br>
望的</font><font face="verdana, arial, geneva, sans-serif" size="3">"cheese"</font><font size="3">或者</font><font face="verdana, arial, geneva, sans-serif" size="3">"parrot"</font><font size="3">的圖象,于是你得到了錯誤信息:”<br>
沒聽說過一個名為</font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>the_image</tt></font><font size="3">的對象”。</font></td>
</tr>
</table>
<p><font size="3"> </font></p>
<p> <font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">還好,</font><font face="verdana, arial, geneva, sans-serif" size="3">eval</font><font size="3">能夠幫你得到你想要的對象。</font></p>
<pre>
<font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">
</font><font face="verdana, arial, geneva, sans-serif" size="2">function simpleSwap()
{
var the_image = prompt("change parrot or cheese","");
var the_image_name = "window.document." + the_image;
var the_image_object = eval(the_image_name);
the_image_object.src = "ant.gif";
}
</font></pre>
<table border="0" width="456" cellpadding="0" cellspacing="0">
<tr>
<td width="556"> <font face="verdana, arial, geneva, sans-serif" size="3">
<font face="helvetica, arial, sans-serif" size="2"></font></font><font size="3">如果用戶在提示框里填入</font><font face="verdana, arial, geneva, sans-serif" size="3">"parrot"</font><font size="3">,在第二行里創建了一個字<br>
符串即</font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>window.document.parrot</tt>.
</font><font size="3">然后包含了</font><font face="verdana, arial, geneva, sans-serif" size="3">eval</font><font size="3">的第三<br>
行意思是: </font><font face="verdana, arial, geneva, sans-serif" size="3">"</font><font size="3">給我對象</font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>window.document.parrot</tt>"
- </font><font size="3">也就是<br>
你要的那個圖象對象。一旦你獲取了這個圖象對象,你可以把<br>
它的</font><font face="verdana, arial, geneva, sans-serif" size="3">src</font><font size="3">屬性設為</font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>ant.gif</tt>.
</font><font size="3">有點害怕?用不著。其實這相當有<br>
用,人們也經常使用它。</font>
<p><font face="verdana, arial, geneva, sans-serif" size="3"></font><font size="3">如果你不喜歡</font><font face="verdana, arial, geneva, sans-serif" size="3"><tt>eval()</tt>,
</font><font size="3">有另一種獲取難以索引的對象的途徑。<a href="day4_10.html">>></a></font>
</td>
</tr>
</table>
<p align="left"><font face="宋體" size="3" color="#000000"><strong>JavaScript高級教程</strong></font><font color="#FF0000" face="宋體" size="3"><br>
</font><font size="3"><font color="#FF3300">第一頁</font> <a href="day4_1.html"><font face="verdana, arial, geneva, sans-serif">JavaScript</font>高級教程<font face="verdana, arial, geneva, sans-serif">-
</font>第<font face="verdana, arial, geneva, sans-serif">4</font>天</a>
<br>
<font color="#FF3300">第二頁 </font><a href="day4_2.html">圖象映射與<font face="verdana, arial, geneva, sans-serif">JavaScript</font></a><font face="verdana, arial, geneva, sans-serif"><br>
</font><font color="#FF3300">第三頁 </font><a href="day4_3.html">預裝圖象 -
是什么<font face="verdana, arial, geneva, sans-serif">?</font></a><font face="verdana, arial, geneva, sans-serif"><br>
</font><font color="#FF3300">第四頁 </font><a href="day4_4.html">預裝圖象 -
怎么做?</a><font face="verdana, arial, geneva, sans-serif"><br>
</font><font color="#FF3300">第五頁 </font><a href="day4_5.html">對象的優點</a><br>
<font color="#FF3300">第六頁 </font><a href="day4_6.html">創建你自己的對象</a><br>
<font color="#FF3300">第七頁 </font><a href="day4_7.html">你的面向對象的虛擬寵物</a><br>
<font color="#FF3300">第八頁 </font><a href="day4_8.html">計算字符串</a><br>
<font color="#FF3300">第九頁 </font>獲取難以索引的對象<br>
<font color="#FF3300">第十頁 </font><a href="day4_10.html">另一種獲取難以索引的對象的手段</a><br>
<font color="#FF3300">第十一頁 </font><a href="day4_11.html">第四天課程復習</a></font></p>
<p>[<a href="day1_1.html">第1課</a>][<a href="day2_1.html">第2課</a>][<a href="day3_1.html">第3課</a>][第4課][<a href="day5_1.html">第5課</a>]</p>
<hr align="left">
<!--webbot bot="Include" U-Include="../../copyright.html" TAG="BODY" startspan -->
<p><font face="verdana, arial, geneva, sans-serif" size="2"><a href="http://phtshop.yeah.net" target="_top">本文根據
網猴 相關文章改編,版權歸原作者所有。</a> </font><font color="#000000"><span class="smallfont"></span></font></p>
<!--webbot bot="Include" endspan i-checksum="15926" --> </td>
</tr>
<tr> </tr>
</table>
</div>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -