//產生“點亮”的效果
function lightOpt(ele)
{
var eleSrc;
//------------------------------------------
//常變量說明
//eleSrc :發生事件的元素
//------------------------------------------
eleSrc = ele;
eleSrc.className = "optLighted";
}
//在列表中,使鼠標離開的單詞
//還原為初始狀態
function delightOpt(ele)
{
var eleSrc;
//------------------------------------------
//常變量說明
//eleSrc :發生事件的元素
//------------------------------------------
eleSrc = ele;
eleSrc.className = "optDelighted";
}
//得到定義過的將加入列表的單詞
function makeOpt(strWord, iWrdIdx)
{
var strOptHead, strOptFoot;
var strOptWord;
//------------------------------------------
//常變量說明
//strOptHead :重定義單詞頭。字符串型
//strOptFoot :重定義單詞尾。字符串型
//strOptWord :重定義單詞。字符串型
//------------------------------------------
strOptHead = "<div class='optDelighted' onmouseover='lightOpt(this);' onmouseout='delightOpt(this);' ondblclick='removeOpt(this);' wrdIdx='" + iWrdIdx + "'>";
strOptFoot = "</div>";
strOptWord = strOptHead + strWord + strOptFoot;
//alert(strOptWord);
return strOptWord;
}
//刪除列表中的單詞
function removeOpt(ele)
{
var eleSrc;
var iIndex, iWrdIdx;
var astrWords, astrHead, astrFoot;
//------------------------------------------
//常變量說明
//eleSrc :發生事件的元素
//iIndex :表示詞匯分類的數字。整型
//iWrdIdx :單詞在單詞數組中的索引。整型
//astrWords :某類詞匯單詞數組。字符串型數組
//astrHead :某類詞匯單詞數組頭部分。字符串型數組
//astrFoot :某類詞匯單詞數組尾部分。字符串型數組
//------------------------------------------
eleSrc = ele;
iIndex = getEleIndex(eleSrc.parentElement);
iWrdIdx = parseInt(eleSrc.wrdIdx);
//將單詞從詞匯數組中刪去
//showArray(m_astrWords[iIndex]);
astrWords = m_astrWords[iIndex].concat();
astrHead = astrWords.slice(0, iWrdIdx);
astrFoot = astrWords.slice(iWrdIdx + 1);
m_astrWords[iIndex] = astrHead.concat(astrFoot);
//showArray(astrHead);
//showArray(astrFoot);
//showArray(m_astrWords[iIndex]);
//將剩余的單詞重新寫入到頁面中
valueList(m_astrWords[iIndex], iIndex);
txtWord[iIndex].select();
}
//-->
</script>
</head>
<body>
<!--標題-->
<div align="CENTER">
<span style="font-size: 20pt; font-weight: BOLD">詞語搭配游戲</span>
<span class="fontEng2">v1.0</span>
</div>
<hr style="visibility: HIDDEN">
<!--主表格1-->
<table border="0" align="CENTER" width="80%">
<colgroup></colgroup>
<colgroup></colgroup>
<colgroup></colgroup>
<colgroup></colgroup>
<colgroup></colgroup>
<colgroup></colgroup>
<colgroup align="CENTER"></colgroup>
<colgroup></colgroup>
<%For m_iCount = 0 To (m_iPartCnt - 1)%>
<tr>
<td><%= m_astrSenPart(m_iCount)%></td>
<td width="20%"><input type="text" id="txtWord" style="width: 100%"></td>
<td><button id="btnGetWord" style="width: 75px" title="將單詞保存到內存中">保存</button></td>
<td><button id="btnReset" style="width: 75px" title="從內存中刪去當前類別所有的單詞">重置</button></td>
<td><button id="btnSave" style="width: 75px" title="將單詞保存到文件中">存入</button></td>
<td><button id="btnLoad" style="width: 75px" title="從文件中載入單詞">載入</button></td>
<td width="15%"><label id="lblWordList" title="單擊固定我">單詞列表</label></td>
<td>
<div id="divWordList" class="listHidden"></div>
個數:<label id="lblWordCount" class="fontEng1"><%= 0%></label>
</td>
</tr>
<%Next%>
</table>
<hr style="visibility: HIDDEN">
<hr style="color: BLUE">
<!--主表格2-->
<table border="0" align="CENTER" width="80%">
<colgroup width="16%"></colgroup>
<colgroup width="16%"></colgroup>
<colgroup width="16%"></colgroup>
<colgroup></colgroup>
<tr>
<td><button id="btnResetAll" accesskey="r" title="從內存中刪去所有類別的單詞" class="btnDelighted">全部重置 <u>R</u></button></td>
<td><button id="btnSaveAll" accesskey="s" title="將所有類別的單詞保存到文件中" class="btnDelighted">全部存入 <u>S</u></button></td>
<td><button id="btnLoadAll" accesskey="l" title="從文件中載入所有類別的單詞" class="btnDelighted">全部載入 <u>L</u></button></td>
<td>
<span style="font-size: 9pt; color: RED;">請單擊</span> <label id="lblHelp" title="單擊固定我">游戲說明</label>
<!--幫助說明表格-->
<div id="divHelp" class="helpHidden">
<table id="tblHelp" border="0" align="CENTER" width="300px" style="font-size: 9pt;">
<colgroup width="75px"></colgroup>
<colgroup></colgroup>
<tr><td colspan="2">
<a href="#1" style="color: BLUE;">游戲步驟</a>
<a href="#2" style="color: BLUE;">操作說明</a>
<a href="#3" style="color: BLUE;">游戲起源</a>
<a href="#4" style="color: BLUE;">制作原因</a>
<a href="#5" style="color: BLUE;">游戲功效</a>
<a name="0" style="display: NONE;">TOP</a>
</td></tr>
<!--游戲步驟-->
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">
[<a name="1" style="color: BLUE;">游戲步驟</a>]
<a href="#0" class="link">TOP</a>
</td></tr>
<tr><td colspan="2">
<span class="fontEng1"><1></span>在每個部分的<span class="fontEmp">輸入框</span>中輸入單詞, 按<span class="fontEmp">回車</span>或<span class="fontEmp">“保存”</span>按鈕存入內存中;
或按<span class="fontEmp">“載入”</span>按鈕調出以前保存的某類別單詞紀錄;
或按<span class="fontEmp">“全部載入”</span>按鈕調出以前保存的所有類別單詞紀錄<br>
<span class="fontEng1"><2></span>按<span class="fontEmp">“開始搭配”</span>按鈕,系統將從各類單詞中隨機抽取一個,組成一個句子
</td></tr>
<!--操作說明-->
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">
[<a name="2" style="color: BLUE;">操作說明</a>]
<a href="#0" class="link">TOP</a>
</td></tr>
<tr>
<td>保存</td>
<td>得到用戶輸入的單詞</td>
</tr>
<tr>
<td>重置</td>
<td>將當前類別所有的單詞從內存中刪去</td>
</tr>
<tr>
<td>存入</td>
<td>將所選類別的當前詞匯保存進文件中</td>
</tr>
<tr>
<td>載入</td>
<td>從文件中讀取所選類別的單詞紀錄</td>
</tr>
<tr>
<td>全部重置</td>
<td>重置頁面至初始狀態</td>
</tr>
<tr>
<td>全部保存</td>
<td>把所有類別的單詞都存入文件</td>
</tr>
<tr>
<td>全部載入</td>
<td>從文件中載入所有類別的單詞</td>
</tr>
<tr>
<td>開始搭配</td>
<td>進行詞匯搭配,得到一個句子</td>
</tr>
<tr><td></td></tr>
<tr><td colspan="2">
<span class="fontEng1"><1></span>
<span class="fontEmp">將鼠標移至“單詞列表”處</span>,會彈出該類詞匯的單詞列表;
<span class="fontEmp">將鼠標移開</span>,列表會自動隱藏;
<span class="fontEmp">點擊“單詞列表”</span>,會固定單詞列表;
<span class="fontEmp">再次點擊</span>,會取消固定<br>
<span class="fontEng1"><2></span>
在<span class="fontEmp">固定住一個單詞列表</span>后,
<span class="fontEmp">雙擊</span>該列表中的某個單詞,可以將該單詞從內存中刪去<br>
<span class="fontEng1"><3></span>
輸完一個單詞后,<span class="fontEmp">直接按回車</span>就可以保存了,這樣比按“保存”保存單詞更方便
</td></tr>
<!--游戲起源-->
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">
[<a name="3" style="color: BLUE;">游戲起源</a>]
<a href="#0" class="link">TOP</a>
</td></tr>
<tr><td colspan="2">
這個游戲想法來自于小時候玩的紙團游戲。那時和姐姐在家里閑得無聊,就玩這個,哈哈。
玩法很簡單,做一些紙片,分成四堆,分別寫上<span class="fontEmp">親朋好友的名字</span>、<span class="fontEmp">形容程度的詞語</span>、<span class="fontEmp">關于地點的詞語</span>和<span class="fontEmp">所做的事情</span>。
然后,將紙片捏成紙團,<span class="fontEng1">OK, Let's Start!</span> 現在從每堆中抽出一個紙團,就有四個詞語,將它們組成一句話,因為是隨便抽的,有時能組成很搞笑的句子。
如:陳楠興奮地在大街上跳夏威夷草裙舞;萬民悠閑地在公園里洗澡。^_+
</td></tr>
<!--制作原因-->
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">
[<a name="4" style="color: BLUE;">制作原因</a>]
<a href="#0" class="link">TOP</a>
</td></tr>
<tr><td colspan="2">
主要是無聊,想做個游戲娛樂一下自己,當然也希望大家能從中得到笑聲。
其次也想鍛煉一下自己的技術,以前用<span class="fontEng1">VB</span>做過一個,不是很好,這次用的是<span class="fontEng1">ASP</span>,不知有沒有進步,呵呵
這個版本我大概地測試了一下,沒發現大的<span class="fontEng1">bug</span>。如果您在游戲中發現了問題或有什么建議,請一定告訴我,在此先謝謝了!
我的信箱是<a href="mailto: iamchn@21cn.com" class="link">iamchn@21cn.com</a>。不好你就說嗎!不可能你說好我又說不好,你不說好我又說好的,^_+
</td></tr>
<!--游戲功效-->
<tr><td colspan="2"></td></tr>
<tr><td colspan="2">
[<a name="5" style="color: BLUE;">游戲功效</a>]
<a href="#0" class="link">TOP</a>
</td></tr>
<tr><td colspan="2">
因為是搞笑游戲,所以能使你心情愉快、青春煥發,間接增加找對象的成功率;
因為不用做紙團了,減少了浪費和污染,從而美化了世界環境;
相信還有很多功效,請大家幫我找。哈哈。
</td></tr>
</table>
</div>
</td>
</tr>
<tr>
<td><button id="btnAsb" accesskey="a" title="從每個類別詞匯中隨機抽取一個單詞,組成一個句子"class="btnDelighted">開始搭配 <u>A</u></button></td>
<td colspan="3"><input type="text" id="txtSentence" style="width: 100%"></td>
</tr>
</table>
<hr style="color: BLUE">
<!--提交表單-->
<form id="frmWords" method="POST" action="" style="display: NONE;">
<%For m_iCount = 0 To (m_iPartCnt - 1)%>
<input type="text" name="txtWords<%= m_iCount%>">
<%Next%>
<input type="text" name="txtSenPart">
<input type="text" name="txtOpWay">
</form>
<!--版權-->
<div align="CENTER">
<div>
© <span class="fontEng2">2001 China Sentin Sci. & Tech. Co., Ltd.</span>
<span class="fontEng2">All Rights Reserved.</span>
</div>
<div>
<span class="fontEng2">Authored by</span> <a href="mailto: iamchn@21cn.com" class="link">Recon</a></span>
<a href="http://recon.top263.net/" class="link">http://recon.top263.net/</a>
</div>
</div>
</body>
</html>
<%
'以下是服務器端腳本
'用到的函數和過程
'************************
'函數名 :SaveFile
'功能 :將某類詞匯保存到文件中
'輸入 :1、iSenPart :表示詞匯分類的數字。整型
' 可能的值有:
' 0:主語
' 1:程度狀語
' 2:地點狀語
' 3:謂語
'輸出 :對文件操作后的狀態值。整型
' 可能的值有:
' 0:操作成功
' 1:操作失敗
'************************
Function SaveFile(iSenPart)
Dim fsoMain, tsfWords
Dim iCount, iWrdCnt
Dim iOpStatus
'------------------------------------------
'常變量說明
'fsoMain :FSO對象
'tsfWords :TEXTSTREAM對象
'iCount :計數器。整型
'iWrdCnt :某類詞匯單詞的數目。整型
'iOpStatus :文件操作完畢后的狀態。整型
'------------------------------------------
Set fsoMain = Server.CreateObject("SCRIPTING.FILESYSTEMOBJECT")
Set tsfWords= fsoMain.CreateTextFile(m_strFilePath & m_astrFileName(iSenPart), True)
tsfWords.WriteLine("[" & m_astrSenPart(iSenPart) & "部分]")
'如果該類別至少有一個單詞
If IsEmpty(m_astrWords(iSenPart)) = False Then
iWrdCnt = UBound(m_astrWords(iSenPart)) + 1
For iCount = 0 To (iWrdCnt - 1)
tsfWords.WriteLine(m_astrWords(iSenPart)(iCount))
Next
End If
tsfWords.Close
iOpStatus = 0
SaveFile = iOpStatus
End Function
'************************
'函數名 :LoadFile
'功能 :從文件中載入某類詞匯
'輸入 :1、iSenPart :表示詞匯分類的數字。整型
' 可能的值有:
' 0:主語
' 1:程度狀語
' 2:地點狀語
' 3:謂語
'輸出 :對文件操作后的狀態值。整型
' 可能的值有:
' 0:操作成功
' 1:操作失敗
'************************
Function LoadFile(iSenPart)
Dim fsoMain, tsfWords
Dim strLoaded
Dim iOpStatus
'------------------------------------------
'常變量說明
'fsoMain :FSO對象
'tsfWords :TEXTSTREAM對象
'strLoaded :某類詞匯所有單詞構成的字符串。字符串型
'iOpStatus :文件操作完畢后的狀態。整型
'------------------------------------------
Set fsoMain = Server.CreateObject("SCRIPTING.FILESYSTEMOBJECT")
If fsoMain.FileExists(m_strFilePath & m_astrFileName(iSenPart)) = True Then
'如果存在紀錄文件
strLoaded = ""
Set tsfWords= fsoMain.OpenTextFile(m_strFilePath & m_astrFileName(iSenPart), 1)
tsfWords.SkipLine
Do While tsfWords.AtEndOfStream = False
strLoaded = strLoaded & tsfWords.ReadLine & ","
Loop
If strLoaded <> "" Then
strLoaded = Left(strLoaded, Len(strLoaded) - 1)
m_astrWords(iSenPart) = Split(strLoaded, ",")
Else
m_astrWords(iSenPart) = Empty
End If
tsfWords.Close
iOpStatus = 0
Else
'如果不存在紀錄文件
iOpStatus = 1
End If
LoadFile = iOpStatus
End Function
%>
<%
'以下是服務器端腳本
'用于測試的函數和過程
Sub Show(strDef)
Response.Write strDef & ": " & Eval(strDef) & "<br>"
End Sub
Sub ShowMethod()
Response.Write "Request Method: " & Request.ServerVariables("REQUEST_METHOD") & "<br>"
End Sub
Sub ShowForm()
Dim iCount
Dim strProp
iCount = 0
Response.Write "*********Form Information******<br>"
For Each strProp In Request.Form
iCount = iCount + 1
Response.Write iCount & "." & strProp & ": " & Request.Form(strProp) & "<br>"
Next
Response.Write "*********Form End**************<br>"
End Sub
%>