林周| 循化| 刚察| 沽源| 浠水| 临江| 平坝| 眉山| 塘沽| 勉县| 达拉特旗| 瑞丽| 普兰| 呈贡| 长治市| 武汉| 宽城| 鄂温克族自治旗| 武胜| 且末| 温江| 五莲| 西华| 黄冈| 揭东| 慈利| 临城| 黄龙| 陇西| 大渡口| 武乡| 万荣| 濠江| 科尔沁左翼中旗| 磐石| 奇台| 临汾| 玉门| 策勒| 安丘| 文县| 陈巴尔虎旗| 平邑| 海原| 河北| 老河口| 泸定| 罗田| 新建| 忠县| 固镇| 玉龙| 武进| 荆门| 文安| 沁水| 贞丰| 龙江| 平安| 醴陵| 久治| 高要| 莱山| 贵港| 下花园| 仪征| 台儿庄| 雅江| 同仁| 绛县| 水城| 迁安| 神池| 阳山| 天峻| 沁阳| 铜川| 蒲江| 湖北| 桃江| 宣威| 晋中| 晋中| 眉县| 华县| 金山屯| 长沙| 宜黄| 肇东| 锡林浩特| 肇州| 田林| 龙门| 德庆| 通州| 大竹| 兰坪| 阜新蒙古族自治县| 福建| 肥城| 海南| 长岛| 武邑| 江门| 都兰| 信丰| 林口| 谢通门| 桑植| 阿拉善右旗| 桐城| 扎赉特旗| 郎溪| 平川| 杭锦旗| 壶关| 祁东| 察哈尔右翼中旗| 永平| 户县| 遂昌| 红古| 五通桥| 泾阳| 浦北| 旌德| 丹阳| 信阳| 龙海| 鹤壁| 澄城| 喀什| 焦作| 奇台| 吴中| 常熟| 凌云| 乌尔禾| 福建| 开化| 金平| 东沙岛| 巴里坤| 浮梁| 青阳| 宜阳| 昆明| 南票| 昌乐| 鸡泽| 祁东| 肃南| 萍乡| 清涧| 水城| 林甸| 平和| 定边| 新都| 阿拉善右旗| 延寿| 贵州| 南靖| 繁峙| 旌德| 蕉岭| 奎屯| 汝南| 阜宁| 猇亭| 太仆寺旗| 株洲市| 富拉尔基| 华亭| 遵义县| 衢州| 定南| 铁岭市| 贺州| 蒙阴| 乌什| 阳泉| 达坂城| 大厂| 永川| 桃源| 四会| 姜堰| 宜兰| 汉南| 阿鲁科尔沁旗| 红原| 南沙岛| 来凤| 太原| 忠县| 陈仓| 皋兰| 陵水| 彭水| 靖安| 会东| 镇原| 万安| 南投| 景东| 沾益| 津南| 固安| 娄烦| 鄂托克前旗| 焉耆| 大埔| 长寿| 阳泉| 万全| 六安| 石狮| 丰县| 吴堡| 灌阳| 临朐| 神农架林区| 寿县| 西充| 海丰| 平远| 聂拉木| 芒康| 精河| 舟曲| 唐县| 大同市| 澳门葡京官方网 九五至尊娱乐网址 外围赌大小 云顶娱乐场 炸金花怎么玩 银河开户官网 新澳门娱乐场娱乐 上葡京线路 宝马娱乐官网 永利娱乐网址 威尼斯01311 超凡体验 澳门真人发牌 葡京网站 美高梅官网网址 澳门威尼斯人赌城 线上威尼斯 葡京网站网投 九五至尊娱乐 葡京国际网站 澳门新葡萄京官网 永利集团 威尼斯网上赌场网址 线上现金网注册 新葡京赌场平台 葡京平台玩法 葡京官方直营 澳门黄金城娱乐官网 上葡京网站平台 澳门在线娱乐平台 线上新葡京网站 现金网上赌场 葡京 国际厅 真人百家乐 24小时娱乐城 线路检测中心 博狗棋牌赌场

澳门威尼斯人登陆游戏:

2018-12-15 20:11 来源:华夏生活

  澳门威尼斯人登陆游戏:

  必赢 澳门之窗(记者苏莉通讯员向行军)(作者为全国政协常委、民进中央副主席)

习近平同志指出,社会组织面大量广,加强社会组织党的建设十分重要。中共十八大以来,中共中央始终坚持中国特色解决民族问题的正确道路,坚持和完善民族区域自治制度,大力支持少数民族和民族地区经济社会发展,加强少数民族各类人才的培养,推动民族地区提升内生发展动力、加快脱贫攻坚步伐、促进公共服务均等化,使各族群众共享改革发展成果。

  党的十八大以来,习近平同志围绕坚持和发展中国特色社会主义这一鲜明主题,以马克思主义政治家的战略思维深邃洞察当今时代潮流,以高超的政治智慧和高度的理论自觉回答时代和实践发展对党治国理政提出的新课题,提出一系列富有创见的新理念新思想新战略。之后又召开全省“同心共建、企地共赢”工作座谈会,推动各省辖市和企业深度对接。

  大家围绕“深入推进‘一带一路’建设”和“大力振兴和提升实体经济”等关系国计民生的重大问题,深入考察调研,踊跃建言献策,提出意见和建议150多件,为中共中央科学决策和有效施策提供了重要参考。随着我国由“生存型社会”向“发展型社会”转变,社会主要矛盾已经转化为人民日益增长的美好生活需要和不平衡不充分的发展之间的矛盾,人们对公平正义、民主法治、共同富裕,对促进人的全面发展、实现社会全面进步产生了新的更高期待。

如何认识党的十九大的相关阐述?最基本的是要循着回应时代课题→得到时代检验→满足时代需要的脉络去理解,也就是我们党一贯坚持和反复强调的:坚持老祖宗、讲出新话语,与时俱进形成新的思想理论。

  他们赞成中共中央提出修改宪法的建议,赞同本次宪法修改的总体要求和原则,并就加强宪法实施和监督、维护宪法权威、推进依宪治国和依法治国提出意见和建议。

  一、创新目的(天津市)滨海新区党委统战部积极探索为非公有制经济服务方式,统筹协调建立非公有制经济组织服务中心(以下简称服务中心),探索整合统一战线组织服务非公有制经济发展的相关资源,打造多方位保姆式服务平台,建立扁平化、面对面的新型服务架构,将服务中心建成非公有制经济组织党组织之家、商协会之家、企业家之家,有力促进了新区非公有制经济的健康发展和非公有制经济人士的健康成长。对此,习近平同志指出,要认识和把握我国社会发展的阶段性特征,要坚持辩证唯物主义和历史唯物主义的方法论,从历史和现实、理论和实践、国内和国际等的结合上进行思考,从我国社会发展的历史方位上来思考,从党和国家事业发展大局出发进行思考,得出正确结论。

  《论语·里仁》里讲到,“士志于道,而耻恶衣恶食者,未足与议也。

  汪洋强调,打好三大攻坚战将为我国建设社会主义现代化国家打下坚实基础,同时也将为民营经济实现高质量发展创造有利的经济和社会环境。中共十八大以来,中共中央多次强调,坚持依法治国首先要坚持依宪治国,坚持依法执政首先要坚持依宪执政。

  要坚定走绿色发展道路,认真执行生态环境保护制度,努力形成节约资源和保护环境的产业结构。

  鸿利在线对习近平新时代中国特色社会主义思想的时代背景、形成过程、丰富内涵和历史地位,党的十九大报告作出全面系统阐述,强调它是在系统回答新时代坚持和发展什么样的中国特色社会主义、怎样坚持和发展中国特色社会主义这个重大时代课题中形成的,是对马克思列宁主义、毛泽东思想、邓小平理论、“三个代表”重要思想、科学发展观的继承和发展,是马克思主义中国化最新成果,是党和人民实践经验和集体智慧的结晶,是中国特色社会主义理论体系的重要组成部分,是全党全国人民为实现中华民族伟大复兴而奋斗的行动指南,必须长期坚持并不断发展。

  一是立足实际定政策。早在革命战争时期,毛泽东同志就指出:“认清中国的国情,乃是认清一切革命问题的基本的根据。

  金沙开户 新葡京赌场网站 澳门威尼斯 30年品质保证值得信赖

  澳门威尼斯人登陆游戏:

 
责编:

无忧脚本

 找回密码
 加入无忧

QQ登录

只需一步,快速开始

搜索
查看: 166760|回复: 145
打印 上一主题 下一主题

[无忧经典旧帖] == 众多高手的心血集合

[复制链接]
跳转到指定楼层
楼主
发表于 2003-3-15 20:47:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
表格排序 [如果运行后看不到效果,请把内容保存为html文件再浏览]

  1. <LINK
  2. href="http://www.brainjar.com.aizhuangbi05.cn/common/default.css" type=text/css rel=stylesheet>
  3. <STYLE type=text/css>TABLE {
  4.         BORDER-RIGHT: #000000 2px solid; BORDER-TOP: #000000 2px solid; BORDER-LEFT: #000000 2px solid; BORDER-BOTTOM: #000000 2px solid; border-spacing: 0px; cell-spacing: 0px
  5. }
  6. TD {
  7.         PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 10pt; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap
  8. }
  9. TH {
  10.         PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 10pt; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap
  11. }
  12. TD.numeric {
  13.         TEXT-ALIGN: right
  14. }
  15. TH {
  16.         BACKGROUND-COLOR: #c0c0c0
  17. }
  18. TH.mainHeader {
  19.         COLOR: #ffffff; BACKGROUND-COLOR: #808080; TEXT-ALIGN: left
  20. }
  21. TH A {
  22.         COLOR: #000080; TEXT-DECORATION: none
  23. }
  24. TH A:visited {
  25.         COLOR: #000080
  26. }
  27. TH A:active {
  28.         COLOR: #800000; TEXT-DECORATION: underline
  29. }
  30. TH A:hover {
  31.         COLOR: #800000; TEXT-DECORATION: underline
  32. }
  33. TR.alternateRow {
  34.         BACKGROUND-COLOR: #e0e0e0
  35. }
  36. TD.sortedColumn {
  37.         BACKGROUND-COLOR: #f0f0f0
  38. }
  39. TH.sortedColumn {
  40.         BACKGROUND-COLOR: #b0b0b0
  41. }
  42. TR.alternateRow TD.sortedColumn {
  43.         BACKGROUND-COLOR: #d0d0d0
  44. }
  45. </STYLE>

  46. <SCRIPT type=text/javascript>

  47. //-----------------------------------------------------------------------------
  48. // sortTable(id, col, rev)
  49. //
  50. //  id  - ID of the TABLE, TBODY, THEAD or TFOOT element to be sorted.
  51. //  col - Index of the column to sort, 0 = first column, 1 = second column,
  52. //        etc.
  53. //  rev - If true, the column is sorted in reverse (descending) order
  54. //        initially.
  55. //
  56. // Note: the team name column (index 1) is used as a secondary sort column and
  57. // always sorted in ascending order.
  58. //-----------------------------------------------------------------------------

  59. function sortTable(id, col, rev) {

  60.   // Get the table or table section to sort.
  61.   var tblEl = document.getElementById(id);

  62.   // The first time this function is called for a given table, set up an
  63.   // array of reverse sort flags.
  64.   if (tblEl.reverseSort == null) {
  65.     tblEl.reverseSort = new Array();
  66.     // Also, assume the team name column is initially sorted.
  67.     tblEl.lastColumn = 1;
  68.   }

  69.   // If this column has not been sorted before, set the initial sort direction.
  70.   if (tblEl.reverseSort[col] == null)
  71.     tblEl.reverseSort[col] = rev;

  72.   // If this column was the last one sorted, reverse its sort direction.
  73.   if (col == tblEl.lastColumn)
  74.     tblEl.reverseSort[col] = !tblEl.reverseSort[col];

  75.   // Remember this column as the last one sorted.
  76.   tblEl.lastColumn = col;

  77.   // Set the table display style to "none" - necessary for Netscape 6
  78.   // browsers.
  79.   var oldDsply = tblEl.style.display;
  80.   tblEl.style.display = "none";

  81.   // Sort the rows based on the content of the specified column using a
  82.   // selection sort.

  83.   var tmpEl;
  84.   var i, j;
  85.   var minVal, minIdx;
  86.   var testVal;
  87.   var cmp;

  88.   for (i = 0; i < tblEl.rows.length - 1; i++) {

  89.     // Assume the current row has the minimum value.
  90.     minIdx = i;
  91.     minVal = getTextValue(tblEl.rows[i].cells[col]);

  92.     // Search the rows that follow the current one for a smaller value.
  93.     for (j = i + 1; j < tblEl.rows.length; j++) {
  94.       testVal = getTextValue(tblEl.rows[j].cells[col]);
  95.       cmp = compareValues(minVal, testVal);
  96.       // Negate the comparison result if the reverse sort flag is set.
  97.       if (tblEl.reverseSort[col])
  98.         cmp = -cmp;
  99.       // Sort by the second column (team name) if those values are equal.
  100.       if (cmp == 0 && col != 1)
  101.         cmp = compareValues(getTextValue(tblEl.rows[minIdx].cells[1]),
  102.                             getTextValue(tblEl.rows[j].cells[1]));
  103.       // If this row has a smaller value than the current minimum, remember its
  104.       // position and update the current minimum value.
  105.       if (cmp > 0) {
  106.         minIdx = j;
  107.         minVal = testVal;
  108.       }
  109.     }

  110.     // By now, we have the row with the smallest value. Remove it from the
  111.     // table and insert it before the current row.
  112.     if (minIdx > i) {
  113.       tmpEl = tblEl.removeChild(tblEl.rows[minIdx]);
  114.       tblEl.insertBefore(tmpEl, tblEl.rows[i]);
  115.     }
  116.   }

  117.   // Make it look pretty.
  118.   makePretty(tblEl, col);

  119.   // Set team rankings.
  120.   setRanks(tblEl, col, rev);

  121.   // Restore the table's display style.
  122.   tblEl.style.display = oldDsply;

  123.   return false;
  124. }

  125. //-----------------------------------------------------------------------------
  126. // Functions to get and compare values during a sort.
  127. //-----------------------------------------------------------------------------

  128. // This code is necessary for browsers that don't reflect the DOM constants
  129. // (like IE).
  130. if (document.ELEMENT_NODE == null) {
  131.   document.ELEMENT_NODE = 1;
  132.   document.TEXT_NODE = 3;
  133. }

  134. function getTextValue(el) {

  135.   var i;
  136.   var s;

  137.   // Find and concatenate the values of all text nodes contained within the
  138.   // element.
  139.   s = "";
  140.   for (i = 0; i < el.childNodes.length; i++)
  141.     if (el.childNodes[i].nodeType == document.TEXT_NODE)
  142.       s += el.childNodes[i].nodeValue;
  143.     else if (el.childNodes[i].nodeType == document.ELEMENT_NODE &&
  144.              el.childNodes[i].tagName == "BR")
  145.       s += " ";
  146.     else
  147.       // Use recursion to get text within sub-elements.
  148.       s += getTextValue(el.childNodes[i]);

  149.   return normalizeString(s);
  150. }

  151. function compareValues(v1, v2) {

  152.   var f1, f2;

  153.   // If the values are numeric, convert them to floats.

  154.   f1 = parseFloat(v1);
  155.   f2 = parseFloat(v2);
  156.   if (!isNaN(f1) && !isNaN(f2)) {
  157.     v1 = f1;
  158.     v2 = f2;
  159.   }

  160.   // Compare the two values.
  161.   if (v1 == v2)
  162.     return 0;
  163.   if (v1 > v2)
  164.     return 1
  165.   return -1;
  166. }

  167. // Regular expressions for normalizing white space.
  168. var whtSpEnds = new RegExp("^\\s*|\\s*$", "g");
  169. var whtSpMult = new RegExp("\\s\\s+", "g");

  170. function normalizeString(s) {

  171.   s = s.replace(whtSpMult, " ");  // Collapse any multiple whites space.
  172.   s = s.replace(whtSpEnds, "");   // Remove leading or trailing white space.

  173.   return s;
  174. }

  175. //-----------------------------------------------------------------------------
  176. // Functions to update the table appearance after a sort.
  177. //-----------------------------------------------------------------------------

  178. // Style class names.
  179. var rowClsNm = "alternateRow";
  180. var colClsNm = "sortedColumn";

  181. // Regular expressions for setting class names.
  182. var rowTest = new RegExp(rowClsNm, "gi");
  183. var colTest = new RegExp(colClsNm, "gi");

  184. function makePretty(tblEl, col) {

  185.   var i, j;
  186.   var rowEl, cellEl;

  187.   // Set style classes on each row to alternate their appearance.
  188.   for (i = 0; i < tblEl.rows.length; i++) {
  189.    rowEl = tblEl.rows[i];
  190.    rowEl.className = rowEl.className.replace(rowTest, "");
  191.     if (i % 2 != 0)
  192.       rowEl.className += " " + rowClsNm;
  193.     rowEl.className = normalizeString(rowEl.className);
  194.     // Set style classes on each column (other than the name column) to
  195.     // highlight the one that was sorted.
  196.     for (j = 2; j < tblEl.rows[i].cells.length; j++) {
  197.       cellEl = rowEl.cells[j];
  198.       cellEl.className = cellEl.className.replace(colTest, "");
  199.       if (j == col)
  200.         cellEl.className += " " + colClsNm;
  201.       cellEl.className = normalizeString(cellEl.className);
  202.     }
  203.   }

  204.   // Find the table header and highlight the column that was sorted.
  205.   var el = tblEl.parentNode.tHead;
  206.   rowEl = el.rows[el.rows.length - 1];
  207.   // Set style classes for each column as above.
  208.   for (i = 2; i < rowEl.cells.length; i++) {
  209.     cellEl = rowEl.cells[i];
  210.     cellEl.className = cellEl.className.replace(colTest, "");
  211.     // Highlight the header of the sorted column.
  212.     if (i == col)
  213.       cellEl.className += " " + colClsNm;
  214.       cellEl.className = normalizeString(cellEl.className);
  215.   }
  216. }

  217. function setRanks(tblEl, col, rev) {

  218.   // Determine whether to start at the top row of the table and go down or
  219.   // at the bottom row and work up. This is based on the current sort
  220.   // direction of the column and its reversed flag.

  221.   var i    = 0;
  222.   var incr = 1;
  223.   if (tblEl.reverseSort[col])
  224.     rev = !rev;
  225.   if (rev) {
  226.     incr = -1;
  227.     i = tblEl.rows.length - 1;
  228.   }

  229.   // Now go through each row in that direction and assign it a rank by
  230.   // counting 1, 2, 3...

  231.   var count   = 1;
  232.   var rank    = count;
  233.   var curVal;
  234.   var lastVal = null;

  235.   // Note that this loop is skipped if the table was sorted on the name
  236.   // column.
  237.   while (col > 1 && i >= 0 && i < tblEl.rows.length) {

  238.     // Get the value of the sort column in this row.
  239.     curVal = getTextValue(tblEl.rows[i].cells[col]);

  240.     // On rows after the first, compare the sort value of this row to the
  241.     // previous one. If they differ, update the rank to match the current row
  242.     // count. (If they are the same, this row will get the same rank as the
  243.     // previous one.)
  244.     if (lastVal != null && compareValues(curVal, lastVal) != 0)
  245.         rank = count;
  246.     // Set the rank for this row.
  247.     tblEl.rows[i].rank = rank;

  248.     // Save the sort value of the current row for the next time around and bump
  249.     // the row counter and index.
  250.     lastVal = curVal;
  251.     count++;
  252.     i += incr;
  253.   }

  254.   // Now go through each row (from top to bottom) and display its rank. Note
  255.   // that when two or more rows are tied, the rank is shown on the first of
  256.   // those rows only.

  257.   var rowEl, cellEl;
  258.   var lastRank = 0;

  259.   // Go through the rows from top to bottom.
  260.   for (i = 0; i < tblEl.rows.length; i++) {
  261.     rowEl = tblEl.rows[i];
  262.     cellEl = rowEl.cells[0];
  263.     // Delete anything currently in the rank column.
  264.     while (cellEl.lastChild != null)
  265.       cellEl.removeChild(cellEl.lastChild);
  266.     // If this row's rank is different from the previous one, Insert a new text
  267.     // node with that rank.
  268.     if (col > 1 && rowEl.rank != lastRank) {
  269.       cellEl.appendChild(document.createTextNode(rowEl.rank));
  270.       lastRank = rowEl.rank;
  271.     }
  272.   }
  273. }

  274. </SCRIPT>

  275. <META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
  276. <BODY>
  277. <P><!-- Offensive statistics table. -->
  278. <TABLE cellSpacing=0 cellPadding=0 border=0>
  279.   <THEAD>
  280.   <TR>
  281.     <TH class=mainHeader colSpan=11>NFL 2001 Offensive Stats</TH></TR>
  282.   <TR>
  283.     <TH style="TEXT-ALIGN: left">Rank</TH>
  284.     <TH style="TEXT-ALIGN: left"><A title="Team Name"
  285.       onclick="this.blur(); return sortTable('offTblBdy', 1, false);"
  286.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Team</A></TH>
  287.     <TH><SPAN title="Games Played">Gms</SPAN></TH>
  288.     <TH><A title="Total Yards"
  289.       onclick="this.blur(); return sortTable('offTblBdy',  3, true);"
  290.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Yds</A></TH>
  291.     <TH><A title="Yards Per Game"
  292.       onclick="this.blur(); return sortTable('offTblBdy',  4, true);"
  293.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Yds/G</A></TH>
  294.     <TH><A title="Total Rushing Yards"
  295.       onclick="this.blur(); return sortTable('offTblBdy',  5, true);"
  296.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">RuYds</A></TH>
  297.     <TH><A title="Rushing Yards Per Game"
  298.       onclick="this.blur(); return sortTable('offTblBdy',  6, true);"
  299.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">RuYds/G</A></TH>
  300.     <TH><A title="Total Passing Yards"
  301.       onclick="this.blur(); return sortTable('offTblBdy',  7, true);"
  302.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">PaYds</A></TH>
  303.     <TH><A title="Passing Yards Per Game"
  304.       onclick="this.blur(); return sortTable('offTblBdy',  8, true);"
  305.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">PaYds/G</A></TH>
  306.     <TH><A title="Total Points Scored"
  307.       onclick="this.blur(); return sortTable('offTblBdy',  9, true);"
  308.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Pts</A></TH>
  309.     <TH><A title="Points Per Game"
  310.       onclick="this.blur(); return sortTable('offTblBdy', 10, true);"
  311.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Pts/G</A></TH></TR></THEAD>
  312.   <TBODY id=offTblBdy>
  313.   <TR>
  314.     <TD class=numeric></TD>
  315.     <TD>Arizona</TD>
  316.     <TD class=numeric>16</TD>
  317.     <TD class=numeric>4898</TD>
  318.     <TD class=numeric>306.1</TD>
  319.     <TD class=numeric>1449</TD>
  320.     <TD class=numeric>90.6</TD>
  321.     <TD class=numeric>3449</TD>
  322.     <TD class=numeric>215.6</TD>
  323.     <TD class=numeric>295</TD>
  324.     <TD class=numeric>18.4</TD></TR>
  325.   <TR class=alternateRow>
  326.     <TD class=numeric></TD>
  327.     <TD>Atlanta</TD>
  328.     <TD class=numeric>16</TD>
  329.     <TD class=numeric>5070</TD>
  330.     <TD class=numeric>316.9</TD>
  331.     <TD class=numeric>1773</TD>
  332.     <TD class=numeric>110.8</TD>
  333.     <TD class=numeric>3297</TD>
  334.     <TD class=numeric>206.1</TD>
  335.     <TD class=numeric>291</TD>
  336.     <TD class=numeric>18.2</TD></TR>
  337.   <TR>
  338.     <TD class=numeric></TD>
  339.     <TD>Baltimore</TD>
  340.     <TD class=numeric>16</TD>
  341.     <TD class=numeric>4773</TD>
  342.     <TD class=numeric>318.2</TD>
  343.     <TD class=numeric>1598</TD>
  344.     <TD class=numeric>106.5</TD>
  345.     <TD class=numeric>3175</TD>
  346.     <TD class=numeric>211.7</TD>
  347.     <TD class=numeric>284</TD>
  348.     <TD class=numeric>18.9</TD></TR>
  349.   <TR class=alternateRow>
  350.     <TD class=numeric></TD>
  351.     <TD>Buffalo</TD>
  352.     <TD class=numeric>16</TD>
  353.     <TD class=numeric>5137</TD>
  354.     <TD class=numeric>321.1</TD>
  355.     <TD class=numeric>1686</TD>
  356.     <TD class=numeric>105.4</TD>
  357.     <TD class=numeric>3451</TD>
  358.     <TD class=numeric>215.7</TD>
  359.     <TD class=numeric>265</TD>
  360.     <TD class=numeric>16.6</TD></TR>
  361.   <TR>
  362.     <TD class=numeric></TD>
  363.     <TD>Carolina</TD>
  364.     <TD class=numeric>16</TD>
  365.     <TD class=numeric>4254</TD>
  366.     <TD class=numeric>265.9</TD>
  367.     <TD class=numeric>1372</TD>
  368.     <TD class=numeric>85.8</TD>
  369.     <TD class=numeric>2882</TD>
  370.     <TD class=numeric>180.1</TD>
  371.     <TD class=numeric>253</TD>
  372.     <TD class=numeric>15.8</TD></TR>
  373.   <TR class=alternateRow>
  374.     <TD class=numeric></TD>
  375.     <TD>Chicago</TD>
  376.     <TD class=numeric>16</TD>
  377.     <TD class=numeric>4694</TD>
  378.     <TD class=numeric>293.4</TD>
  379.     <TD class=numeric>1742</TD>
  380.     <TD class=numeric>108.9</TD>
  381.     <TD class=numeric>2952</TD>
  382.     <TD class=numeric>184.5</TD>
  383.     <TD class=numeric>338</TD>
  384.     <TD class=numeric>21.1</TD></TR>
  385.   <TR>
  386.     <TD class=numeric></TD>
  387.     <TD>Cincinnati</TD>
  388.     <TD class=numeric>16</TD>
  389.     <TD class=numeric>4800</TD>
  390.     <TD class=numeric>300.0</TD>
  391.     <TD class=numeric>1712</TD>
  392.     <TD class=numeric>107.0</TD>
  393.     <TD class=numeric>3088</TD>
  394.     <TD class=numeric>193.0</TD>
  395.     <TD class=numeric>226</TD>
  396.     <TD class=numeric>14.1</TD></TR>
  397.   <TR class=alternateRow>
  398.     <TD class=numeric></TD>
  399.     <TD>Cleveland</TD>
  400.     <TD class=numeric>16</TD>
  401.     <TD class=numeric>4152</TD>
  402.     <TD class=numeric>259.5</TD>
  403.     <TD class=numeric>1351</TD>
  404.     <TD class=numeric>84.4</TD>
  405.     <TD class=numeric>2801</TD>
  406.     <TD class=numeric>175.1</TD>
  407.     <TD class=numeric>285</TD>
  408.     <TD class=numeric>17.8</TD></TR>
  409.   <TR>
  410.     <TD class=numeric></TD>
  411.     <TD>Dallas</TD>
  412.     <TD class=numeric>16</TD>
  413.     <TD class=numeric>4402</TD>
  414.     <TD class=numeric>275.1</TD>
  415.     <TD class=numeric>2184</TD>
  416.     <TD class=numeric>136.5</TD>
  417.     <TD class=numeric>2218</TD>
  418.     <TD class=numeric>138.6</TD>
  419.     <TD class=numeric>246</TD>
  420.     <TD class=numeric>15.4</TD></TR>
  421.   <TR class=alternateRow>
  422.     <TD class=numeric></TD>
  423.     <TD>Denver</TD>
  424.     <TD class=numeric>16</TD>
  425.     <TD class=numeric>4817</TD>
  426.     <TD class=numeric>301.1</TD>
  427.     <TD class=numeric>1877</TD>
  428.     <TD class=numeric>117.3</TD>
  429.     <TD class=numeric>2940</TD>
  430.     <TD class=numeric>183.8</TD>
  431.     <TD class=numeric>340</TD>
  432.     <TD class=numeric>21.2</TD></TR>
  433.   <TR>
  434.     <TD class=numeric></TD>
  435.     <TD>Detroit</TD>
  436.     <TD class=numeric>16</TD>
  437.     <TD class=numeric>4994</TD>
  438.     <TD class=numeric>312.1</TD>
  439.     <TD class=numeric>1398</TD>
  440.     <TD class=numeric>87.4</TD>
  441.     <TD class=numeric>3596</TD>
  442.     <TD class=numeric>224.8</TD>
  443.     <TD class=numeric>270</TD>
  444.     <TD class=numeric>16.9</TD></TR>
  445.   <TR class=alternateRow>
  446.     <TD class=numeric></TD>
  447.     <TD>Green Bay</TD>
  448.     <TD class=numeric>16</TD>
  449.     <TD class=numeric>5463</TD>
  450.     <TD class=numeric>341.4</TD>
  451.     <TD class=numeric>1693</TD>
  452.     <TD class=numeric>105.8</TD>
  453.     <TD class=numeric>3770</TD>
  454.     <TD class=numeric>235.6</TD>
  455.     <TD class=numeric>390</TD>
  456.     <TD class=numeric>24.4</TD></TR>
  457.   <TR>
  458.     <TD class=numeric></TD>
  459.     <TD>Indianapolis</TD>
  460.     <TD class=numeric>16</TD>
  461.     <TD class=numeric>5955</TD>
  462.     <TD class=numeric>372.2</TD>
  463.     <TD class=numeric>1966</TD>
  464.     <TD class=numeric>122.9</TD>
  465.     <TD class=numeric>3989</TD>
  466.     <TD class=numeric>249.3</TD>
  467.     <TD class=numeric>413</TD>
  468.     <TD class=numeric>25.8</TD></TR>
  469.   <TR class=alternateRow>
  470.     <TD class=numeric></TD>
  471.     <TD>Jacksonville</TD>
  472.     <TD class=numeric>16</TD>
  473.     <TD class=numeric>4840</TD>
  474.     <TD class=numeric>302.5</TD>
  475.     <TD class=numeric>1600</TD>
  476.     <TD class=numeric>100.0</TD>
  477.     <TD class=numeric>3240</TD>
  478.     <TD class=numeric>202.5</TD>
  479.     <TD class=numeric>294</TD>
  480.     <TD class=numeric>18.4</TD></TR>
  481.   <TR>
  482.     <TD class=numeric></TD>
  483.     <TD>Kansas City</TD>
  484.     <TD class=numeric>16</TD>
  485.     <TD class=numeric>5673</TD>
  486.     <TD class=numeric>354.6</TD>
  487.     <TD class=numeric>2008</TD>
  488.     <TD class=numeric>125.5</TD>
  489.     <TD class=numeric>3665</TD>
  490.     <TD class=numeric>229.1</TD>
  491.     <TD class=numeric>320</TD>
  492.     <TD class=numeric>20.0</TD></TR>
  493.   <TR class=alternateRow>
  494.     <TD class=numeric></TD>
  495.     <TD>Miami</TD>
  496.     <TD class=numeric>16</TD>
  497.     <TD class=numeric>4821</TD>
  498.     <TD class=numeric>301.3</TD>
  499.     <TD class=numeric>1664</TD>
  500.     <TD class=numeric>104.0</TD>
  501.     <TD class=numeric>3157</TD>
  502.     <TD class=numeric>197.3</TD>
  503.     <TD class=numeric>344</TD>
  504.     <TD class=numeric>21.5</TD></TR>
  505.   <TR>
  506.     <TD class=numeric></TD>
  507.     <TD>Minnesota</TD>
  508.     <TD class=numeric>16</TD>
  509.     <TD class=numeric>5006</TD>
  510.     <TD class=numeric>333.7</TD>
  511.     <TD class=numeric>1523</TD>
  512.     <TD class=numeric>101.5</TD>
  513.     <TD class=numeric>3483</TD>
  514.     <TD class=numeric>232.2</TD>
  515.     <TD class=numeric>287</TD>
  516.     <TD class=numeric>19.1</TD></TR>
  517.   <TR class=alternateRow>
  518.     <TD class=numeric></TD>
  519.     <TD>New England</TD>
  520.     <TD class=numeric>16</TD>
  521.     <TD class=numeric>4882</TD>
  522.     <TD class=numeric>305.1</TD>
  523.     <TD class=numeric>1793</TD>
  524.     <TD class=numeric>112.1</TD>
  525.     <TD class=numeric>3089</TD>
  526.     <TD class=numeric>193.1</TD>
  527.     <TD class=numeric>371</TD>
  528.     <TD class=numeric>23.2</TD></TR>
  529.   <TR>
  530.     <TD class=numeric></TD>
  531.     <TD>New Orleans</TD>
  532.     <TD class=numeric>16</TD>
  533.     <TD class=numeric>5226</TD>
  534.     <TD class=numeric>326.6</TD>
  535.     <TD class=numeric>1712</TD>
  536.     <TD class=numeric>107.0</TD>
  537.     <TD class=numeric>3514</TD>
  538.     <TD class=numeric>219.6</TD>
  539.     <TD class=numeric>333</TD>
  540.     <TD class=numeric>20.8</TD></TR>
  541.   <TR class=alternateRow>
  542.     <TD class=numeric></TD>
  543.     <TD>New York Giants</TD>
  544.     <TD class=numeric>16</TD>
  545.     <TD class=numeric>5335</TD>
  546.     <TD class=numeric>333.4</TD>
  547.     <TD class=numeric>1777</TD>
  548.     <TD class=numeric>111.1</TD>
  549.     <TD class=numeric>3558</TD>
  550.     <TD class=numeric>222.4</TD>
  551.     <TD class=numeric>294</TD>
  552.     <TD class=numeric>18.4</TD></TR>
  553. </TBODY></TABLE>
  554. </BODY></HTML>
复制代码

[ 本贴由 卫星星 于 2003-3-18 11:37 最后编辑 ]
沙发
 楼主| 发表于 2003-3-15 20:49:25 | 只看该作者
表格排序 2  [如果运行后看不到效果,请把内容保存为html文件再浏览]


  1. <LINK
  2. href="http://www.brainjar.com.aizhuangbi05.cn/common/default.css" type=text/css rel=stylesheet>
  3. <STYLE type=text/css>TABLE {
  4.         BORDER-RIGHT: #000000 2px solid; BORDER-TOP: #000000 2px solid; BORDER-LEFT: #000000 2px solid; BORDER-BOTTOM: #000000 2px solid; border-spacing: 0px; cell-spacing: 0px
  5. }
  6. TD {
  7.         PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 10pt; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap
  8. }
  9. TH {
  10.         PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 10pt; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap
  11. }
  12. TD.numeric {
  13.         TEXT-ALIGN: right
  14. }
  15. TH {
  16.         BACKGROUND-COLOR: #c0c0c0
  17. }
  18. TH.mainHeader {
  19.         COLOR: #ffffff; BACKGROUND-COLOR: #808080; TEXT-ALIGN: left
  20. }
  21. TH A {
  22.         COLOR: #000080; TEXT-DECORATION: none
  23. }
  24. TH A:visited {
  25.         COLOR: #000080
  26. }
  27. TH A:active {
  28.         COLOR: #800000; TEXT-DECORATION: underline
  29. }
  30. TH A:hover {
  31.         COLOR: #800000; TEXT-DECORATION: underline
  32. }
  33. TR.alternateRow {
  34.         BACKGROUND-COLOR: #e0e0e0
  35. }
  36. TD.sortedColumn {
  37.         BACKGROUND-COLOR: #f0f0f0
  38. }
  39. TH.sortedColumn {
  40.         BACKGROUND-COLOR: #b0b0b0
  41. }
  42. TR.alternateRow TD.sortedColumn {
  43.         BACKGROUND-COLOR: #d0d0d0
  44. }
  45. </STYLE>

  46. <SCRIPT type=text/javascript>

  47. //-----------------------------------------------------------------------------
  48. // sortTable(id, col, rev)
  49. //
  50. //  id  - ID of the TABLE, TBODY, THEAD or TFOOT element to be sorted.
  51. //  col - Index of the column to sort, 0 = first column, 1 = second column,
  52. //        etc.
  53. //  rev - If true, the column is sorted in reverse (descending) order
  54. //        initially.
  55. //
  56. // Note: the team name column (index 1) is used as a secondary sort column and
  57. // always sorted in ascending order.
  58. //-----------------------------------------------------------------------------

  59. function sortTable(id, col, rev) {

  60.   // Get the table or table section to sort.
  61.   var tblEl = document.getElementById(id);

  62.   // The first time this function is called for a given table, set up an
  63.   // array of reverse sort flags.
  64.   if (tblEl.reverseSort == null) {
  65.     tblEl.reverseSort = new Array();
  66.     // Also, assume the team name column is initially sorted.
  67.     tblEl.lastColumn = 1;
  68.   }

  69.   // If this column has not been sorted before, set the initial sort direction.
  70.   if (tblEl.reverseSort[col] == null)
  71.     tblEl.reverseSort[col] = rev;

  72.   // If this column was the last one sorted, reverse its sort direction.
  73.   if (col == tblEl.lastColumn)
  74.     tblEl.reverseSort[col] = !tblEl.reverseSort[col];

  75.   // Remember this column as the last one sorted.
  76.   tblEl.lastColumn = col;

  77.   // Set the table display style to "none" - necessary for Netscape 6
  78.   // browsers.
  79.   var oldDsply = tblEl.style.display;
  80.   tblEl.style.display = "none";

  81.   // Sort the rows based on the content of the specified column using a
  82.   // selection sort.

  83.   var tmpEl;
  84.   var i, j;
  85.   var minVal, minIdx;
  86.   var testVal;
  87.   var cmp;

  88.   for (i = 0; i < tblEl.rows.length - 1; i++) {

  89.     // Assume the current row has the minimum value.
  90.     minIdx = i;
  91.     minVal = getTextValue(tblEl.rows[i].cells[col]);

  92.     // Search the rows that follow the current one for a smaller value.
  93.     for (j = i + 1; j < tblEl.rows.length; j++) {
  94.       testVal = getTextValue(tblEl.rows[j].cells[col]);
  95.       cmp = compareValues(minVal, testVal);
  96.       // Negate the comparison result if the reverse sort flag is set.
  97.       if (tblEl.reverseSort[col])
  98.         cmp = -cmp;
  99.       // Sort by the second column (team name) if those values are equal.
  100.       if (cmp == 0 && col != 1)
  101.         cmp = compareValues(getTextValue(tblEl.rows[minIdx].cells[1]),
  102.                             getTextValue(tblEl.rows[j].cells[1]));
  103.       // If this row has a smaller value than the current minimum, remember its
  104.       // position and update the current minimum value.
  105.       if (cmp > 0) {
  106.         minIdx = j;
  107.         minVal = testVal;
  108.       }
  109.     }

  110.     // By now, we have the row with the smallest value. Remove it from the
  111.     // table and insert it before the current row.
  112.     if (minIdx > i) {
  113.       tmpEl = tblEl.removeChild(tblEl.rows[minIdx]);
  114.       tblEl.insertBefore(tmpEl, tblEl.rows[i]);
  115.     }
  116.   }

  117.   // Make it look pretty.
  118.   makePretty(tblEl, col);

  119.   // Set team rankings.
  120.   setRanks(tblEl, col, rev);

  121.   // Restore the table's display style.
  122.   tblEl.style.display = oldDsply;

  123.   return false;
  124. }

  125. //-----------------------------------------------------------------------------
  126. // Functions to get and compare values during a sort.
  127. //-----------------------------------------------------------------------------

  128. // This code is necessary for browsers that don't reflect the DOM constants
  129. // (like IE).
  130. if (document.ELEMENT_NODE == null) {
  131.   document.ELEMENT_NODE = 1;
  132.   document.TEXT_NODE = 3;
  133. }

  134. function getTextValue(el) {

  135.   var i;
  136.   var s;

  137.   // Find and concatenate the values of all text nodes contained within the
  138.   // element.
  139.   s = "";
  140.   for (i = 0; i < el.childNodes.length; i++)
  141.     if (el.childNodes[i].nodeType == document.TEXT_NODE)
  142.       s += el.childNodes[i].nodeValue;
  143.     else if (el.childNodes[i].nodeType == document.ELEMENT_NODE &&
  144.              el.childNodes[i].tagName == "BR")
  145.       s += " ";
  146.     else
  147.       // Use recursion to get text within sub-elements.
  148.       s += getTextValue(el.childNodes[i]);

  149.   return normalizeString(s);
  150. }

  151. function compareValues(v1, v2) {

  152.   var f1, f2;

  153.   // If the values are numeric, convert them to floats.

  154.   f1 = parseFloat(v1);
  155.   f2 = parseFloat(v2);
  156.   if (!isNaN(f1) && !isNaN(f2)) {
  157.     v1 = f1;
  158.     v2 = f2;
  159.   }

  160.   // Compare the two values.
  161.   if (v1 == v2)
  162.     return 0;
  163.   if (v1 > v2)
  164.     return 1
  165.   return -1;
  166. }

  167. // Regular expressions for normalizing white space.
  168. var whtSpEnds = new RegExp("^\\s*|\\s*$", "g");
  169. var whtSpMult = new RegExp("\\s\\s+", "g");

  170. function normalizeString(s) {

  171.   s = s.replace(whtSpMult, " ");  // Collapse any multiple whites space.
  172.   s = s.replace(whtSpEnds, "");   // Remove leading or trailing white space.

  173.   return s;
  174. }

  175. //-----------------------------------------------------------------------------
  176. // Functions to update the table appearance after a sort.
  177. //-----------------------------------------------------------------------------

  178. // Style class names.
  179. var rowClsNm = "alternateRow";
  180. var colClsNm = "sortedColumn";

  181. // Regular expressions for setting class names.
  182. var rowTest = new RegExp(rowClsNm, "gi");
  183. var colTest = new RegExp(colClsNm, "gi");

  184. function makePretty(tblEl, col) {

  185.   var i, j;
  186.   var rowEl, cellEl;

  187.   // Set style classes on each row to alternate their appearance.
  188.   for (i = 0; i < tblEl.rows.length; i++) {
  189.    rowEl = tblEl.rows[i];
  190.    rowEl.className = rowEl.className.replace(rowTest, "");
  191.     if (i % 2 != 0)
  192.       rowEl.className += " " + rowClsNm;
  193.     rowEl.className = normalizeString(rowEl.className);
  194.     // Set style classes on each column (other than the name column) to
  195.     // highlight the one that was sorted.
  196.     for (j = 2; j < tblEl.rows[i].cells.length; j++) {
  197.       cellEl = rowEl.cells[j];
  198.       cellEl.className = cellEl.className.replace(colTest, "");
  199.       if (j == col)
  200.         cellEl.className += " " + colClsNm;
  201.       cellEl.className = normalizeString(cellEl.className);
  202.     }
  203.   }

  204.   // Find the table header and highlight the column that was sorted.
  205.   var el = tblEl.parentNode.tHead;
  206.   rowEl = el.rows[el.rows.length - 1];
  207.   // Set style classes for each column as above.
  208.   for (i = 2; i < rowEl.cells.length; i++) {
  209.     cellEl = rowEl.cells[i];
  210.     cellEl.className = cellEl.className.replace(colTest, "");
  211.     // Highlight the header of the sorted column.
  212.     if (i == col)
  213.       cellEl.className += " " + colClsNm;
  214.       cellEl.className = normalizeString(cellEl.className);
  215.   }
  216. }

  217. function setRanks(tblEl, col, rev) {

  218.   // Determine whether to start at the top row of the table and go down or
  219.   // at the bottom row and work up. This is based on the current sort
  220.   // direction of the column and its reversed flag.

  221.   var i    = 0;
  222.   var incr = 1;
  223.   if (tblEl.reverseSort[col])
  224.     rev = !rev;
  225.   if (rev) {
  226.     incr = -1;
  227.     i = tblEl.rows.length - 1;
  228.   }

  229.   // Now go through each row in that direction and assign it a rank by
  230.   // counting 1, 2, 3...

  231.   var count   = 1;
  232.   var rank    = count;
  233.   var curVal;
  234.   var lastVal = null;

  235.   // Note that this loop is skipped if the table was sorted on the name
  236.   // column.
  237.   while (col > 1 && i >= 0 && i < tblEl.rows.length) {

  238.     // Get the value of the sort column in this row.
  239.     curVal = getTextValue(tblEl.rows[i].cells[col]);

  240.     // On rows after the first, compare the sort value of this row to the
  241.     // previous one. If they differ, update the rank to match the current row
  242.     // count. (If they are the same, this row will get the same rank as the
  243.     // previous one.)
  244.     if (lastVal != null && compareValues(curVal, lastVal) != 0)
  245.         rank = count;
  246.     // Set the rank for this row.
  247.     tblEl.rows[i].rank = rank;

  248.     // Save the sort value of the current row for the next time around and bump
  249.     // the row counter and index.
  250.     lastVal = curVal;
  251.     count++;
  252.     i += incr;
  253.   }

  254.   // Now go through each row (from top to bottom) and display its rank. Note
  255.   // that when two or more rows are tied, the rank is shown on the first of
  256.   // those rows only.

  257.   var rowEl, cellEl;
  258.   var lastRank = 0;

  259.   // Go through the rows from top to bottom.
  260.   for (i = 0; i < tblEl.rows.length; i++) {
  261.     rowEl = tblEl.rows[i];
  262.     cellEl = rowEl.cells[0];
  263.     // Delete anything currently in the rank column.
  264.     while (cellEl.lastChild != null)
  265.       cellEl.removeChild(cellEl.lastChild);
  266.     // If this row's rank is different from the previous one, Insert a new text
  267.     // node with that rank.
  268.     if (col > 1 && rowEl.rank != lastRank) {
  269.       cellEl.appendChild(document.createTextNode(rowEl.rank));
  270.       lastRank = rowEl.rank;
  271.     }
  272.   }
  273. }

  274. </SCRIPT>

  275. <META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
  276. <BODY>
  277. <P><!-- Defensive statistics table. -->
  278. <TABLE cellSpacing=0 cellPadding=0 border=0>
  279.   <THEAD>
  280.   <TR>
  281.     <TH class=mainHeader colSpan=11>NFL 2001 Defensive Stats</TH></TR>
  282.   <TR>
  283.     <TH style="TEXT-ALIGN: left">Rank</TH>
  284.     <TH style="TEXT-ALIGN: left"><A title="Team Name"
  285.       onclick="this.blur(); return sortTable('defTblBdy', 1, false);"
  286.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Team</A></TH>
  287.     <TH><SPAN title="Games Played">Gms</SPAN></TH>
  288.     <TH><A title="Total Yards Allowed"
  289.       onclick="this.blur(); return sortTable('defTblBdy',  3, false);"
  290.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Yds</A></TH>
  291.     <TH><A title="Yards Allowed Per Game"
  292.       onclick="this.blur(); return sortTable('defTblBdy',  4, false);"
  293.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Yds/G</A></TH>
  294.     <TH><A title="Total Rushing Yards Allowed"
  295.       onclick="this.blur(); return sortTable('defTblBdy',  5, false);"
  296.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">RuYds</A></TH>
  297.     <TH><A title="Rushing Yards Allowed Per Game"
  298.       onclick="this.blur(); return sortTable('defTblBdy',  6, false);"
  299.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">RuYds/G</A></TH>
  300.     <TH><A title="Total Passing Yards Allowed"
  301.       onclick="this.blur(); return sortTable('defTblBdy',  7, false);"
  302.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">PaYds</A></TH>
  303.     <TH><A title="Passing Yards Allowed Per Game"
  304.       onclick="this.blur(); return sortTable('defTblBdy',  8, false);"
  305.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">PaYds/G</A></TH>
  306.     <TH><A title="Total Points Allowed"
  307.       onclick="this.blur(); return sortTable('defTblBdy',  9, false);"
  308.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Pts</A></TH>
  309.     <TH><A title="Points Allowed Per Game"
  310.       onclick="this.blur(); return sortTable('defTblBdy', 10, false);"
  311.       href="http://www.brainjar.com.aizhuangbi05.cn/dhtml/tablesort/">Pts/G</A></TH></TR></THEAD>
  312.   <TBODY id=defTblBdy>
  313.   <TR class="">
  314.     <TD class=numeric></TD>
  315.     <TD class="">Arizona</TD>
  316.     <TD class=numeric>16</TD>
  317.     <TD class=numeric>5685</TD>
  318.     <TD class=numeric>355.3</TD>
  319.     <TD class=numeric>2087</TD>
  320.     <TD class=numeric>130.4</TD>
  321.     <TD class=numeric>3598</TD>
  322.     <TD class=numeric>224.9</TD>
  323.     <TD class=numeric>343</TD>
  324.     <TD class=numeric>21.4</TD></TR>
  325.   <TR class=alternateRow>
  326.     <TD class=numeric></TD>
  327.     <TD class="">Atlanta</TD>
  328.     <TD class=numeric>16</TD>
  329.     <TD class=numeric>5845</TD>
  330.     <TD class=numeric>365.3</TD>
  331.     <TD class=numeric>1943</TD>
  332.     <TD class=numeric>121.4</TD>
  333.     <TD class=numeric>3902</TD>
  334.     <TD class=numeric>243.9</TD>
  335.     <TD class=numeric>377</TD>
  336.     <TD class=numeric>23.6</TD></TR>
  337.   <TR class="">
  338.     <TD class=numeric></TD>
  339.     <TD class="">Baltimore</TD>
  340.     <TD class=numeric>16</TD>
  341.     <TD class=numeric>4267</TD>
  342.     <TD class=numeric>284.5</TD>
  343.     <TD class=numeric>1325</TD>
  344.     <TD class=numeric>88.3</TD>
  345.     <TD class=numeric>2942</TD>
  346.     <TD class=numeric>196.1</TD>
  347.     <TD class=numeric>262</TD>
  348.     <TD class=numeric>17.5</TD></TR>
  349.   <TR class=alternateRow>
  350.     <TD class=numeric></TD>
  351.     <TD class="">Buffalo</TD>
  352.     <TD class=numeric>16</TD>
  353.     <TD class=numeric>5292</TD>
  354.     <TD class=numeric>330.8</TD>
  355.     <TD class=numeric>2133</TD>
  356.     <TD class=numeric>133.3</TD>
  357.     <TD class=numeric>3159</TD>
  358.     <TD class=numeric>197.4</TD>
  359.     <TD class=numeric>420</TD>
  360.     <TD class=numeric>26.2</TD></TR>
  361.   <TR>
  362.     <TD class=numeric></TD>
  363.     <TD class="">Carolina</TD>
  364.     <TD class=numeric>16</TD>
  365.     <TD class=numeric>5943</TD>
  366.     <TD class=numeric>371.4</TD>
  367.     <TD class=numeric>2301</TD>
  368.     <TD class=numeric>143.8</TD>
  369.     <TD class=numeric>3642</TD>
  370.     <TD class=numeric>227.6</TD>
  371.     <TD class=numeric>410</TD>
  372.     <TD class=numeric>25.6</TD></TR>
  373.   <TR class=alternateRow>
  374.     <TD class=numeric></TD>
  375.     <TD class="">Chicago</TD>
  376.     <TD class=numeric>16</TD>
  377.     <TD class=numeric>4978</TD>
  378.     <TD class=numeric>311.1</TD>
  379.     <TD class=numeric>1313</TD>
  380.     <TD class=numeric>82.1</TD>
  381.     <TD class=numeric>3665</TD>
  382.     <TD class=numeric>229.1</TD>
  383.     <TD class=numeric>203</TD>
  384.     <TD class=numeric>12.7</TD></TR>
  385.   <TR>
  386.     <TD class=numeric></TD>
  387.     <TD class="">Cincinnati</TD>
  388.     <TD class=numeric>16</TD>
  389.     <TD class=numeric>4832</TD>
  390.     <TD class=numeric>302.0</TD>
  391.     <TD class=numeric>1675</TD>
  392.     <TD class=numeric>104.7</TD>
  393.     <TD class=numeric>3157</TD>
  394.     <TD class=numeric>197.3</TD>
  395.     <TD class=numeric>309</TD>
  396.     <TD class=numeric>19.3</TD></TR>
  397.   <TR class=alternateRow>
  398.     <TD class=numeric></TD>
  399.     <TD class="">Cleveland</TD>
  400.     <TD class=numeric>16</TD>
  401.     <TD class=numeric>5297</TD>
  402.     <TD class=numeric>331.1</TD>
  403.     <TD class=numeric>2208</TD>
  404.     <TD class=numeric>138.0</TD>
  405.     <TD class=numeric>3089</TD>
  406.     <TD class=numeric>193.1</TD>
  407.     <TD class=numeric>319</TD>
  408.     <TD class=numeric>19.9</TD></TR>
  409.   <TR>
  410.     <TD class=numeric></TD>
  411.     <TD class="">Dallas</TD>
  412.     <TD class=numeric>16</TD>
  413.     <TD class=numeric>4599</TD>
  414.     <TD class=numeric>287.4</TD>
  415.     <TD class=numeric>1710</TD>
  416.     <TD class=numeric>106.9</TD>
  417.     <TD class=numeric>2889</TD>
  418.     <TD class=numeric>180.6</TD>
  419.     <TD class=numeric>338</TD>
  420.     <TD class=numeric>21.1</TD></TR>
  421.   <TR class=alternateRow>
  422.     <TD class=numeric></TD>
  423.     <TD class="">Denver</TD>
  424.     <TD class=numeric>16</TD>
  425.     <TD class=numeric>4774</TD>
  426.     <TD class=numeric>298.4</TD>
  427.     <TD class=numeric>1492</TD>
  428.     <TD class=numeric>93.2</TD>
  429.     <TD class=numeric>3282</TD>
  430.     <TD class=numeric>205.1</TD>
  431.     <TD class=numeric>339</TD>
  432.     <TD class=numeric>21.2</TD></TR>
  433.   <TR>
  434.     <TD class=numeric></TD>
  435.     <TD class="">Detroit</TD>
  436.     <TD class=numeric>16</TD>
  437.     <TD class=numeric>5521</TD>
  438.     <TD class=numeric>345.1</TD>
  439.     <TD class=numeric>1993</TD>
  440.     <TD class=numeric>124.6</TD>
  441.     <TD class=numeric>3528</TD>
  442.     <TD class=numeric>220.5</TD>
  443.     <TD class=numeric>424</TD>
  444.     <TD class=numeric>26.5</TD></TR>
  445.   <TR class=alternateRow>
  446.     <TD class=numeric></TD>
  447.     <TD class="">Green Bay</TD>
  448.     <TD class=numeric>16</TD>
  449.     <TD class=numeric>4937</TD>
  450.     <TD class=numeric>308.6</TD>
  451.     <TD class=numeric>1769</TD>
  452.     <TD class=numeric>110.6</TD>
  453.     <TD class=numeric>3168</TD>
  454.     <TD class=numeric>198.0</TD>
  455.     <TD class=numeric>266</TD>
  456.     <TD class=numeric>16.6</TD></TR>
  457.   <TR>
  458.     <TD class=numeric></TD>
  459.     <TD class="">Indianapolis</TD>
  460.     <TD class=numeric>16</TD>
  461.     <TD class=numeric>5715</TD>
  462.     <TD class=numeric>357.2</TD>
  463.     <TD class=numeric>2115</TD>
  464.     <TD class=numeric>132.2</TD>
  465.     <TD class=numeric>3600</TD>
  466.     <TD class=numeric>225.0</TD>
  467.     <TD class=numeric>486</TD>
  468.     <TD class=numeric>30.4</TD></TR>
  469.   <TR class=alternateRow>
  470.     <TD class=numeric></TD>
  471.     <TD class="">Jacksonville</TD>
  472.     <TD class=numeric>16</TD>
  473.     <TD class=numeric>5070</TD>
  474.     <TD class=numeric>316.9</TD>
  475.     <TD class=numeric>1611</TD>
  476.     <TD class=numeric>100.7</TD>
  477.     <TD class=numeric>3459</TD>
  478.     <TD class=numeric>216.2</TD>
  479.     <TD class=numeric>286</TD>
  480.     <TD class=numeric>17.9</TD></TR>
  481.   <TR>
  482.     <TD class=numeric></TD>
  483.     <TD class="">Kansas City</TD>
  484.     <TD class=numeric>16</TD>
  485.     <TD class=numeric>5304</TD>
  486.     <TD class=numeric>331.5</TD>
  487.     <TD class=numeric>2140</TD>
  488.     <TD class=numeric>133.8</TD>
  489.     <TD class=numeric>3164</TD>
  490.     <TD class=numeric>197.8</TD>
  491.     <TD class=numeric>344</TD>
  492.     <TD class=numeric>21.5</TD></TR>
  493.   <TR class=alternateRow>
  494.     <TD class=numeric></TD>
  495.     <TD class="">Miami</TD>
  496.     <TD class=numeric>16</TD>
  497.     <TD class=numeric>4608</TD>
  498.     <TD class=numeric>288.0</TD>
  499.     <TD class=numeric>1779</TD>
  500.     <TD class=numeric>111.2</TD>
  501.     <TD class=numeric>2829</TD>
  502.     <TD class=numeric>176.8</TD>
  503.     <TD class=numeric>290</TD>
  504.     <TD class=numeric>18.1</TD></TR>
  505.   <TR>
  506.     <TD class=numeric></TD>
  507.     <TD class="">Minnesota</TD>
  508.     <TD class=numeric>16</TD>
  509.     <TD class=numeric>5315</TD>
  510.     <TD class=numeric>354.3</TD>
  511.     <TD class=numeric>2087</TD>
  512.     <TD class=numeric>139.1</TD>
  513.     <TD class=numeric>3228</TD>
  514.     <TD class=numeric>215.2</TD>
  515.     <TD class=numeric>371</TD>
  516.     <TD class=numeric>24.7</TD></TR>
  517.   <TR class=alternateRow>
  518.     <TD class=numeric></TD>
  519.     <TD class="">New England</TD>
  520.     <TD class=numeric>16</TD>
  521.     <TD class=numeric>5352</TD>
  522.     <TD class=numeric>334.5</TD>
  523.     <TD class=numeric>1855</TD>
  524.     <TD class=numeric>115.9</TD>
  525.     <TD class=numeric>3497</TD>
  526.     <TD class=numeric>218.6</TD>
  527.     <TD class=numeric>272</TD>
  528.     <TD class=numeric>17.0</TD></TR>
  529.   <TR>
  530.     <TD class=numeric></TD>
  531.     <TD class="">New Orleans</TD>
  532.     <TD class=numeric>16</TD>
  533.     <TD class=numeric>5070</TD>
  534.     <TD class=numeric>316.9</TD>
  535.     <TD class=numeric>1715</TD>
  536.     <TD class=numeric>107.2</TD>
  537.     <TD class=numeric>3355</TD>
  538.     <TD class=numeric>209.7</TD>
  539.     <TD class=numeric>409</TD>
  540.     <TD class=numeric>25.6</TD></TR>
  541. </TBODY></TABLE>
  542. </P></BODY></HTML>

复制代码

[ 本贴由 卫星星 于 2003-3-18 11:37 最后编辑 ]
藤椅
 楼主| 发表于 2003-3-15 20:59:41 | 只看该作者
光标定位等等……TextRange的操作

  1. <html>

  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  4. <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  5. <meta name="ProgId" content="FrontPage.Editor.Document">
  6. <title>光标位置</title>
  7. <style>
  8. INPUT{border: 1 solid #000000}
  9. BODY,TABLE{font-size: 10pt}
  10. </style>
  11. </head>

  12. <body>


  13. <table border="0" width="700" cellspacing="0" cellpadding="0">
  14.   <tr>
  15.     <td width="479" rowspan="7">
  16. 点击 TextArea 实现光标定位                                    
  17.                                     
  18. <p>                                    
  19. <textarea rows="7" cols="49" id="box" onclick=tellPoint()>我怕来不及我要抱着你,直到感觉你的绉纹有了岁月的痕迹,直到视线变得模糊直到不能呼吸
  20. 为了你我愿意
  21. 动也不能动也要看着你,直到感觉你的发线有了白雪的痕迹,直到肯定你是真的直到失去力气让我们形影不离
  22. 如果全世界我也可以放弃,至少还有你值得我去珍惜而你在这里就是生命的奇迹
  23. 也许全世界我也可以忘记,就是不愿意失去你的消息你掌心的痣我总记得在哪里
  24. 我们好不容易我们身不由已,我怕时间太快不够将你看仔细,我怕时间太慢日夜担心失去你恨不得一夜之间白头永不分离
  25. </textarea>      
  26.      
  27. <script>     
  28.      
  29. function movePoint()     
  30. {     
  31.         var pn = parseInt(pnum.value);     
  32.              
  33.         if(isNaN(pn))     
  34.                 return;     
  35.              
  36.         var rng = box.createTextRange();
  37.                      
  38.         rng.moveStart("character",pn);     
  39.              
  40.         rng.collapse(true);             
  41.              
  42.         rng.select();     
  43.              
  44.         returnCase(rng)             
  45.                      
  46. }     
  47.      
  48. function tellPoint()     
  49. {     
  50.         var rng = event.srcElement.createTextRange();       
  51.      
  52.         rng.moveToPoint(event.x,event.y);             
  53.         rng.moveStart("character",-event.srcElement.value.length)             
  54.              
  55.         pnum.value = rng.text.length     
  56.              
  57.         returnCase(rng)     
  58. }     
  59.      
  60.      
  61. function returnCase(rng)     
  62. {     
  63.         bh.innerText = rng.boundingHeight;     
  64.         bl.innerText = rng.boundingLeft;     
  65.         bt.innerText = rng.boundingTop;     
  66.         bw.innerText = rng.boundingWidth;     
  67.         ot.innerText = rng.offsetTop;     
  68.         ol.innerText = rng.offsetLeft;     
  69.         t.innerText  = rng.text;     
  70. }     
  71.      
  72.      
  73. function selectText(sp,ep)     
  74. {     
  75.         sp = parseInt(sp)     
  76.         ep = parseInt(ep)     
  77.              
  78.         if(isNaN(sp)||isNaN(ep))     
  79.                 return;     
  80.                      
  81.         var rng = box.createTextRange();     
  82.              
  83.         rng.moveEnd("character",-box.value.length)     
  84.         rng.moveStart("character",-box.value.length)     
  85.              
  86.         rng.collapse(true);     
  87.              
  88.         rng.moveEnd("character",ep)     
  89.         rng.moveStart("character",sp)     
  90.              
  91.         rng.select();     
  92.              
  93.         returnCase(rng);     
  94. }     

  95. var rg = box.createTextRange();
  96.      
  97. function findText(tw)     
  98. {     
  99.         if(tw=="")     
  100.                 return;        
  101.              
  102.         var sw = 0;     
  103.              
  104.         if(document.selection)     
  105.         {     
  106.                 sw = document.selection.createRange().text.length;     
  107.         }             
  108.              
  109.         rg.moveEnd("character",box.value.length);     
  110.              
  111.         rg.moveStart("character",sw);     

  112.                              
  113.         if(rg.findText(tw))             
  114.         {     
  115.                 rg.select();

  116.                 returnCase(rg);          
  117.         }       
  118.        
  119.         if(rg.text!=tw)
  120.         {
  121.                 alert("已经搜索完了")
  122.                 rg = box.createTextRange()
  123.         }
  124.                      
  125. }     
  126.      
  127. </script>                                 
  128. </p>                                    
  129. <p></p>                                    
  130. 光标位置:<input type="text" value="0" id="pnum" size="8"> <input type="button" onclick="movePoint()" value="移动光标到指定位置">                                 
  131. <p></p>                              
  132. 选择指定范围:<input type="text" size="9" id="sbox"> -- <input type="text" size="9" id="ebox"> <input type="button" onclick="selectText(sbox.value,ebox.value)" value="选择">                                
  133. <p></p>                    
  134. 选择查找字符 :<input type="text" value="" id="cbox" size="8"> <input type="button" onclick="findText(cbox.value)" value="查找下一个并选择">                                 
  135.                     
  136.     </td>                              
  137.     <td width="217">boundingHeight:&nbsp;<span id="bh"></span></td>                              
  138.   </tr>                              
  139.   <tr>                              
  140.     <td width="217">boundingWidth:&nbsp;<span id="bw"></span></td>                              
  141.   </tr>                              
  142.   <tr>                              
  143.     <td width="217">boundingTop:&nbsp;<span id="bt"></span></td>                              
  144.   </tr>                              
  145.   <tr>                              
  146.     <td width="217">boundingLeft:&nbsp;<span id="bl"></span></td>                              
  147.   </tr>                              
  148.   <tr>                              
  149.     <td width="217">offsetLeft:&nbsp;<span id="ol"></span> </td>                              
  150.   </tr>                              
  151.   <tr>                              
  152.     <td width="217">offsetTop:&nbsp;<span id="ot"></span> </td>                              
  153.   </tr>                              
  154.   <tr>                              
  155.     <td width="217">text:&nbsp;<span style="position: absolute; z-index: 10" id="t"></span> </td>                              
  156.   </tr>                              
  157. </table>                              
  158. </body>                                    
  159.                                     
  160. </html>                                    

复制代码
板凳
 楼主| 发表于 2003-3-15 21:01:57 | 只看该作者
用按纽让层移动

  1. <html>
  2. <head>
  3. <title>无标题文档</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5. </head>

  6. <body topmargin="0" leftmargin="0" bgcolor="#FFFFFF" onclick="menuHide();">
  7. <script>
  8. document.onmousewheel=function()
  9. {
  10.         status=event.wheelDelta;
  11. }
  12. </script>
  13. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  14. <style>
  15. <!--
  16. .menuover    { background-color: #FFeeee; border: 1px solid #FF0000; cursor: hand; }
  17. .menuout     { cursor: hand; }
  18. td,a         { color: #ff0000; font-size: 12px; font-family: 宋体; text-decoration: none }
  19. -->
  20. </style>
  21. <script language=javascript>
  22. var run=0;
  23. var show=0;
  24. function menuRow()
  25. {
  26.   show=1;
  27.   run=1;
  28.   menu.style.pixelTop-=5;
  29.   if(menu.style.pixelTop>0)
  30.         setTimeout('menuRow();','5');
  31.   else
  32.     run=0;
  33. }
  34. function menuShow()
  35. {
  36.   if(!run&&!show)
  37.   {
  38.     menu.style.visibility='visible';
  39.         menup.style.visibility='visible';
  40.     menu.style.pixelTop=200;
  41.     menuRow();
  42.   }
  43. }
  44. function menuHide()
  45. {
  46.   if(!run&&show)
  47.   {
  48.     menu.style.visibility='hidden';
  49.         menup.style.visibility='hidden';
  50.         show=0;
  51.   }
  52. }
  53. </script>



  54.           <div style="overflow: hidden; left=404px; top:30px; height:200px; visibility:show;

  55. width:97px; z-index:1; position:absolute; visibility:hidden; border-left: 0px; border-right: 0px;

  56. border-top: 0px solid; border-bottom: 1px solid #FF0000; " id=menup>
  57.         <div bgcolor="#FFFFFF" id=menu align=center style="position: absolute; width: 97px; height:

  58. 200px; z-index: 1; left: 0px; top: 200px; overflow: hidden; visibility: hidden; background-image:

  59. url('images/menu_bg.gif'); border: 1 solid #FF0000">
  60.           <table width=93 cellpadding="0" cellspacing="4" style="position: relative; top: 1">
  61.             <tr>
  62.               <td valign="middle" align="center" height="20" class=menuout

  63. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  64. onclick="location='aboutus'">关 于 我 们</td>
  65.             </tr>
  66.             <tr>
  67.               <td valign="middle" align="center" height="20" class=menuout

  68. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  69. onclick="location='joinus'">加 入 我 们</td>
  70.             </tr>
  71.             <tr>
  72.               <td valign="middle" align="center" height="20" class=menuout

  73. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  74. onclick="location='market'">交 易 市 场</td>
  75.             </tr>
  76.             <tr>
  77.               <td valign="middle" align="center" height="20" class=menuout

  78. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  79. onclick="location='super'">网 页 超 市</td>
  80.             </tr>
  81.             <tr>
  82.               <td valign="middle" align="center" height="20" class=menuout

  83. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  84. onclick="location='domain'">域 名 注 册</td>
  85.             </tr>
  86.             <tr>
  87.               <td valign="middle" align="center" height="20" class=menuout

  88. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  89. onclick="location='host'">虚 拟 主 机</td>
  90.             </tr>
  91.                         <tr>
  92.               <td valign="middle" align="center" height="20" class=menuout

  93. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  94. onclick="location='service'">服 务 中 心</td>
  95.             </tr>
  96.             <tr>
  97.               <td valign="middle" align="center" height="20" class=menuout

  98. onmouseover=this.className='menuover'; onmouseout=this.className='menuout';

  99. onclick="location='cooperator'">合 作 伙 伴</td>
  100.             </tr>
  101.           </table>
  102.         </div>
  103.           </div>
  104. <a onclick="menuShow();" style="position: absolute; width: 97px; height: 200px; z-index: 1; left:

  105. 410px; top: 230px;cursor:hand; " alt=Menu>123</a>

  106. </body>
  107. </html>

复制代码
5
 楼主| 发表于 2003-3-15 21:02:30 | 只看该作者
24点(多个结果)


  1. <html>

  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  4. <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  5. <meta name="ProgId" content="FrontPage.Editor.Document">
  6. <title>24</title>
  7. <style>
  8.         INPUT,TEXTAREA{border: 1 solid #0099CC;}
  9. </style>
  10. </head>

  11. <body link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">
  12. <script>
  13. /*-------------------------------------
  14. 原理阐述:

  15. 四个数字,判断怎样得到 24 可能而且没有重复的组合方式如下:

  16. 可能的组合方式
  17.         a+b+c+d
  18.         a+(b+c)+d
  19.         (a+b)+c+d
  20.         a+b+(c+d)
  21.         a+(b+c+d)
  22.         (a+b+c)+d
  23.         (a+b)+(c+d)
  24.         (a+(b+c))+d
  25.         ((a+b)+c)+d
  26.         a+(b+(c+d))
  27.         a+((b+c)+d)               

  28. 依据这个规律,我们可以得出…… 下面这段代码~~ 哈哈……

  29. ---------------------------------------*/
  30.         var num = null;
  31.        
  32.         var sign = new Array("+","-","*","/");
  33.        
  34. function returnSZ()
  35. {
  36.         var allstr = "";
  37.        
  38.         for(s1=0; s1<4; s1++)
  39.         {
  40.                 for(s2=0; s2<4; s2++)
  41.                 {
  42.                         for(s3=0; s3<4; s3++)
  43.                         {                                       
  44.                                 for(n1=0; n1<4; n1++)
  45.                                 {                                       
  46.                                         for(n2=0; n2<4; n2++)
  47.                                         {
  48.                                                 if(n2==n1)
  49.                                                         continue;       
  50.                                                
  51.                                                 for(n3=0; n3<4; n3++)
  52.                                                 {
  53.                                                         if(n3==n1||n3==n2)
  54.                                                                 continue;                                                       
  55.                                                                
  56.                                                         for(n4=0; n4<4; n4++)
  57.                                                         {
  58.                                                                 if(n4==n1||n4==n2||n4==n3)
  59.                                                                         continue;
  60.                                                                                                                                        
  61.                                                                 var str = "";
  62.                                                                
  63.                                                                 /*--------------------- 可能的组合方式
  64.                                                                 a+b+c+d
  65.                                                                 a+(b+c)+d
  66.                                                                 (a+b)+c+d
  67.                                                                 a+b+(c+d)
  68.                                                                 a+(b+c+d)
  69.                                                                 (a+b+c)+d
  70.                                                                 (a+b)+(c+d)
  71.                                                                 (a+(b+c))+d
  72.                                                                 ((a+b)+c)+d
  73.                                                                 a+(b+(c+d))
  74.                                                                 a+((b+c)+d)                                                               
  75.                                                                 ----------------------*/
  76.                                                                                                                                
  77.                                                                 str = num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +num[n3]+  sign[s3]  +num[n4];
  78.                                                                 if(judgeNum(str))
  79.                                                                 {                                               
  80.                                                                         allstr +=(str)+"\n";
  81.                                                                 }
  82.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]  +num[n4];
  83.                                                                 if(judgeNum(str))
  84.                                                                 {                                       
  85.                                                                         allstr +=(str)+"\n";
  86.                                                                 }                                                               
  87.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+")"+  sign[s2]  +num[n3]+  sign[s3]  +num[n4];
  88.                                                                 if(judgeNum(str))
  89.                                                                 {
  90.                                                                         allstr +=(str)+"\n";
  91.                                                                 }                                                               
  92.                                                                 str = num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+")";
  93.                                                                 if(judgeNum(str))
  94.                                                                 {
  95.                                                                         allstr +=(str)+"\n";
  96.                                                                 }
  97.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+  sign[s3]  +num[n4]+")";
  98.                                                                 if(judgeNum(str))
  99.                                                                 {
  100.                                                                         allstr +=(str)+"\n";
  101.                                                                 }
  102.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]        +num[n4];                                                       
  103.                                                                 if(judgeNum(str))
  104.                                                                 {
  105.                                                                         allstr +=(str)+"\n";
  106.                                                                 }                                                               
  107.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+")"+ sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+")";
  108.                                                                 if(judgeNum(str))
  109.                                                                 {
  110.                                                                         allstr +=(str)+"\n";
  111.                                                                 }                                                                                                                       
  112.                                                                 str = "("+num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+"))"+  sign[s3]  +num[n4];
  113.                                                                 if(judgeNum(str))
  114.                                                                 {
  115.                                                                         allstr +=(str)+"\n";
  116.                                                                 }                                                               
  117.                                                                 str = "(("+num[n1]+  sign[s1]  +num[n2]+")"+ sign[s2]  +num[n3]+")"+  sign[s3]  +num[n4];
  118.                                                                 if(judgeNum(str))
  119.                                                                 {
  120.                                                                         allstr +=(str)+"\n";
  121.                                                                 }                                                               
  122.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+"))";
  123.                                                                 if(judgeNum(str))
  124.                                                                 {
  125.                                                                         allstr +=(str)+"\n";
  126.                                                                 }                                                               
  127.                                                                 str = num[n1]+  sign[s1]  +"(("+num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]   +num[n4]+")";       
  128.                                                                 if(judgeNum(str))
  129.                                                                 {
  130.                                                                         allstr +=(str)+"\n";
  131.                                                                 }       
  132.                                                                                
  133.                                                                                                                                                
  134.                                                         }                                                                       
  135.                                                        
  136.                                                 }                                                                       
  137.                                                        
  138.                                         }
  139.                                 }
  140.                         }
  141.                 }
  142.         }
  143.        
  144.         if(allstr!="")
  145.                 result.value = allstr;
  146.         else       
  147.                 result.value=("这个好像不行吧~~~~");
  148. }       


  149. function judgeNum(theline)
  150. {
  151.         if(eval(theline)==24)
  152.                 return true;
  153.         else
  154.                 return false;       
  155. }

  156. function RunSZ()
  157. {
  158.         var ArrayBox = document.getElementsByName("box");
  159.        
  160.         num = null;
  161.        
  162.         num = new Array();
  163.        
  164.         for(i=0;i<4;i++)
  165.         {
  166.                 var str = ArrayBox[i].value;
  167.                
  168.                 if(str=="")
  169.                 {
  170.                         alert("第"+(i+1)+"个数字没有填");
  171.                         ArrayBox[i].focus();
  172.                         return;
  173.                 }
  174.                 else
  175.                 {
  176.                         if(!str.match(/\D/g))                       
  177.                                 num[i] = ArrayBox[i].value;
  178.                         else
  179.                         {
  180.                                 alert("第"+(i+1)+"个数字有不为数字的字符");
  181.                                 ArrayBox[i].focus();
  182.                                 return;                                       
  183.                         }       
  184.                 }
  185.         }
  186.        
  187.        
  188.         returnSZ();
  189.        
  190. }

  191. </script>       
  192. <div align="center">
  193.   <table border="0" width="324" style="font-family: 宋体; font-size: 9pt; border: 1 solid #0099CC" height="200" cellspacing="0" cellpadding="0">
  194.     <tr>
  195.       <td width="308" height="28" align="center" bgcolor="#0099CC" style="color: #FFFFFF" colspan="2">
  196.         <p align="left">|| 24 点 游戏</td>
  197.     </tr>
  198.   <center>
  199.     <tr>
  200.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF; border-top: 1 solid #DDFFEF">第一个数字</td>
  201.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20" ></td>
  202.     </tr>
  203.     <tr>
  204.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF">第一个数字</td>
  205.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  206.     </tr>
  207.     <tr>
  208.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF">第三个数字</td>
  209.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  210.     </tr>
  211.     <tr>
  212.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF; border-bottom: 1 solid #DDFFEF">第四个数字</td>
  213.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  214.     </tr>
  215.     <tr>
  216.       <td width="82" height="68" align="center" bgcolor="#0099CC" style="color: #FFFFFF"><a href="javascript:;" onclick=RunSZ()>计算结果</a></td>
  217.       <td width="226" height="68" align="center" bgcolor="#0099CC"><br>
  218.         <textarea id="result" rows="4" cols="29"></textarea><br>
  219.         <br>
  220.       </td>
  221.     </tr>
  222.   </table>
  223.   </center>
  224. </div>
  225. </body>

  226. </html>


复制代码
6
 楼主| 发表于 2003-3-15 21:03:05 | 只看该作者
24点(单个结果)

  1. <html>

  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  4. <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  5. <meta name="ProgId" content="FrontPage.Editor.Document">
  6. <title>24</title>
  7. <style>
  8.         INPUT{border: 1 solid #0099CC;}
  9. </style>
  10. </head>

  11. <body link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">
  12. <script>
  13. /*-------------------------------------
  14. 原理阐述:

  15. 四个数字,判断怎样得到 24 可能而且没有重复的组合方式如下:

  16. 可能的组合方式
  17.         a+b+c+d
  18.         a+(b+c)+d
  19.         (a+b)+c+d
  20.         a+b+(c+d)
  21.         a+(b+c+d)
  22.         (a+b+c)+d
  23.         (a+b)+(c+d)
  24.         (a+(b+c))+d
  25.         ((a+b)+c)+d
  26.         a+(b+(c+d))
  27.         a+((b+c)+d)               

  28. 依据这个规律,我们可以得出…… 下面这段代码~~ 哈哈……

  29. ---------------------------------------*/
  30.         var num = null;
  31.        
  32.         var sign = new Array("+","-","*","/");
  33.        
  34. function returnSZ()
  35. {
  36.         var allstr = "";
  37.        
  38.         for(s1=0; s1<4; s1++)
  39.         {
  40.                 for(s2=0; s2<4; s2++)
  41.                 {
  42.                         for(s3=0; s3<4; s3++)
  43.                         {                                       
  44.                                 for(n1=0; n1<4; n1++)
  45.                                 {                                       
  46.                                         for(n2=0; n2<4; n2++)
  47.                                         {
  48.                                                 if(n2==n1)
  49.                                                         continue;       
  50.                                                
  51.                                                 for(n3=0; n3<4; n3++)
  52.                                                 {
  53.                                                         if(n3==n1||n3==n2)
  54.                                                                 continue;                                                       
  55.                                                                
  56.                                                         for(n4=0; n4<4; n4++)
  57.                                                         {
  58.                                                                 if(n4==n1||n4==n2||n4==n3)
  59.                                                                         continue;
  60.                                                                                                                                        
  61.                                                                 var str = "";
  62.                                                                
  63.                                                                 /*--------------------- 可能的组合方式
  64.                                                                 a+b+c+d
  65.                                                                 a+(b+c)+d
  66.                                                                 (a+b)+c+d
  67.                                                                 a+b+(c+d)
  68.                                                                 a+(b+c+d)
  69.                                                                 (a+b+c)+d
  70.                                                                 (a+b)+(c+d)
  71.                                                                 (a+(b+c))+d
  72.                                                                 ((a+b)+c)+d
  73.                                                                 a+(b+(c+d))
  74.                                                                 a+((b+c)+d)                                                               
  75.                                                                 ----------------------*/
  76.                                                                                                                                
  77.                                                                 str = num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +num[n3]+  sign[s3]  +num[n4];
  78.                                                                 if(judgeNum(str))
  79.                                                                 {                                               
  80.                                                                         result.value=(str);
  81.                                                                         return;
  82.                                                                 }
  83.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]  +num[n4];
  84.                                                                 if(judgeNum(str))
  85.                                                                 {                                       
  86.                                                                         result.value=(str);
  87.                                                                         return;
  88.                                                                 }                                                               
  89.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+")"+  sign[s2]  +num[n3]+  sign[s3]  +num[n4];
  90.                                                                 if(judgeNum(str))
  91.                                                                 {
  92.                                                                         result.value=(str);
  93.                                                                         return;
  94.                                                                 }                                                               
  95.                                                                 str = num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+")";
  96.                                                                 if(judgeNum(str))
  97.                                                                 {
  98.                                                                         result.value=(str);
  99.                                                                         return;
  100.                                                                 }
  101.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+  sign[s3]  +num[n4]+")";
  102.                                                                 if(judgeNum(str))
  103.                                                                 {
  104.                                                                         result.value=(str);
  105.                                                                         return;
  106.                                                                 }
  107.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]        +num[n4];                                                       
  108.                                                                 if(judgeNum(str))
  109.                                                                 {
  110.                                                                         result.value=(str);
  111.                                                                         return;
  112.                                                                 }                                                               
  113.                                                                 str = "("+num[n1]+  sign[s1]  +num[n2]+")"+ sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+")";
  114.                                                                 if(judgeNum(str))
  115.                                                                 {
  116.                                                                         result.value=(str);
  117.                                                                         return;
  118.                                                                 }                                                                                                                       
  119.                                                                 str = "("+num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +num[n3]+"))"+  sign[s3]  +num[n4];
  120.                                                                 if(judgeNum(str))
  121.                                                                 {
  122.                                                                         result.value=(str);
  123.                                                                         return;
  124.                                                                 }                                                               
  125.                                                                 str = "(("+num[n1]+  sign[s1]  +num[n2]+")"+ sign[s2]  +num[n3]+")"+  sign[s3]  +num[n4];
  126.                                                                 if(judgeNum(str))
  127.                                                                 {
  128.                                                                         result.value=(str);
  129.                                                                         return;
  130.                                                                 }                                                               
  131.                                                                 str = num[n1]+  sign[s1]  +"("+num[n2]+  sign[s2]  +"("+num[n3]+  sign[s3]  +num[n4]+"))";
  132.                                                                 if(judgeNum(str))
  133.                                                                 {
  134.                                                                         result.value=(str);
  135.                                                                         return;
  136.                                                                 }                                                               
  137.                                                                 str = num[n1]+  sign[s1]  +"(("+num[n2]+  sign[s2]  +num[n3]+")"+  sign[s3]   +num[n4]+")";       
  138.                                                                 if(judgeNum(str))
  139.                                                                 {
  140.                                                                         result.value=(str);
  141.                                                                         return;
  142.                                                                 }       
  143.                                                                                
  144.                                                                                                                                                
  145.                                                         }                                                                       
  146.                                                        
  147.                                                 }                                                                       
  148.                                                        
  149.                                         }
  150.                                 }
  151.                         }
  152.                 }
  153.         }
  154.        
  155.         result.value=("这个好像不行吧~~~~");
  156. }       


  157. function judgeNum(theline)
  158. {
  159.         if(eval(theline)==24)
  160.                 return true;
  161.         else
  162.                 return false;       
  163. }

  164. function RunSZ()
  165. {
  166.         var ArrayBox = document.getElementsByName("box");
  167.        
  168.         num = null;
  169.        
  170.         num = new Array();
  171.        
  172.         for(i=0;i<4;i++)
  173.         {
  174.                 var str = ArrayBox[i].value;
  175.                
  176.                 if(str=="")
  177.                 {
  178.                         alert("第"+(i+1)+"个数字没有填");
  179.                         ArrayBox[i].focus();
  180.                         return;
  181.                 }
  182.                 else
  183.                 {
  184.                         if(!str.match(/\D/g))                       
  185.                                 num[i] = ArrayBox[i].value;
  186.                         else
  187.                         {
  188.                                 alert("第"+(i+1)+"个数字有不为数字的字符");
  189.                                 ArrayBox[i].focus();
  190.                                 return;                                       
  191.                         }       
  192.                 }
  193.         }
  194.        
  195.        
  196.         returnSZ();
  197.        
  198. }

  199. </script>       
  200. <div align="center">
  201.   <table border="0" width="324" style="font-family: 宋体; font-size: 9pt; border: 1 solid #0099CC" height="200" cellspacing="0" cellpadding="0">
  202.     <tr>
  203.       <td width="308" height="28" align="center" bgcolor="#0099CC" style="color: #FFFFFF" colspan="2">
  204.         <p align="left">|| 24 点 游戏</td>
  205.     </tr>
  206.   <center>
  207.     <tr>
  208.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF; border-top: 1 solid #DDFFEF">第一个数字</td>
  209.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20" ></td>
  210.     </tr>
  211.     <tr>
  212.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF">第一个数字</td>
  213.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  214.     </tr>
  215.     <tr>
  216.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF">第三个数字</td>
  217.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  218.     </tr>
  219.     <tr>
  220.       <td width="82" height="40" align="center" bgcolor="#0099CC" style="color: #FFFFFF; border-bottom: 1 solid #DDFFEF">第四个数字</td>
  221.       <td width="226" height="40" align="center" bgcolor="#DDFFEF"><input type="text" name="box" size="20"></td>
  222.     </tr>
  223.     <tr>
  224.       <td width="82" height="68" align="center" bgcolor="#0099CC" style="color: #FFFFFF"><a href="javascript:;" onclick=RunSZ()>计算结果</a></td>
  225.       <td width="226" height="68" align="center" bgcolor="#0099CC"><br>
  226.         <input type="text" id="result" value="">
  227.       </td>
  228.     </tr>
  229.   </table>
  230.   </center>
  231. </div>
  232. </body>

  233. </html>



复制代码
7
 楼主| 发表于 2003-3-15 21:04:16 | 只看该作者
包含另外一个页面

  1. <object height=400 width=600 type="text/x-scriptlet" data="http://www.dulishi.net.aizhuangbi05.cn/dulishi2001/main/default.asp">

复制代码
8
 楼主| 发表于 2003-3-15 21:05:31 | 只看该作者
弹出式帮助


  1. <!--
  2. /************************************************************************************
  3. ***                                                                                                ***
  4. ***        作者:wingfancy                                                                        ***
  5. ***        邮箱:wingfancy@webtsp.net                                                                ***
  6. ***        网址:http://www.5meng.com.aizhuangbi05.cn   ☆{吾梦→网络编程技术站}☆                                ***
  7. ***        OICQ:54810177 (欢迎共同探讨网络编程技术)                                                ***
  8. ***                                                                                                ***
  9. ***        代码说明:弹出式帮助。                                                                                ***
  10. ***                                                                                                ***
  11. *************************************************************************************/
  12. -->



  13. <OBJECT
  14. id=pophelp
  15. type="application/x-oleobject"
  16. classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"
  17. >
  18. <PARAM name="Command" value="HH Version">
  19. </OBJECT>

  20. <script language=javascript>
  21. popstyle= "Verdana,10,,";//弹出式帮助字体设定

  22. function showPophelp(helpstr,w,h,Foreground,Background){
  23. if (body.style.cursor=='help')
  24. pophelp.TextPopup(helpstr,popstyle,w,h,Foreground,Background);
  25. }

  26. document.onclick=resetCursor
  27. function resetCursor(){
  28. if (!(event.srcElement.innerText=="?"))
  29. body.style.cursor='default';
  30. }
  31. </script>


  32. <body id=body style="cursor:default;">

  33. <span onclick="javascript:body.style.cursor='help';" style="cursor:help;"><big><b>?</b></big></span>(说明:先点击前面"?"符号,当鼠标样式变为"求助"时,点击下面文字。)<br>

  34. <br>
  35. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span onclick="showPophelp('这是弹出式帮助',20,20,0,255)">弹出式帮助</span><br><br>

  36. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span onclick="showPophelp('我是wingfancy,欢迎大家一起讨论网络编程技术。',20,120,0,0)">wingfancy</span><br><br>

  37. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span onclick="showPophelp('wingfancy@webtsp.net',20,20,0,0)">电子信箱</span><br><br>

  38. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span onclick="showPophelp('http://www.5meng.com.aizhuangbi05.cn',20,20,0,0)">网址</span><br><br>


  39. </body>
复制代码
9
 楼主| 发表于 2003-3-15 21:06:51 | 只看该作者
XP 风格的右键菜单

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <HTML><HEAD><TITLE>mouse-menu</TITLE>
  3. <META content="text/html; charset=gb2312" http-equiv=Content-Type>
  4. <META content="MSHTML 5.00.2614.3500" name=GENERATOR>
  5. <META content=FrontPage.Editor.Document name=ProgId>
  6. <STYLE>.menutable {
  7.         BACKGROUND-COLOR: #ffffff; BORDER-BOTTOM: #307ce8 1px solid; BORDER-LEFT: #307ce8 5px solid; BORDER-RIGHT: #307ce8 1px solid; BORDER-TOP: #94bcf3 1px solid; FONT-SIZE: 12px; POSITION: absolute; Z-INDEX: 100
  8. }
  9. .menutrin {
  10.         BACKGROUND-COLOR: #1a71e6; COLOR: #ffffff; CURSOR: hand
  11. }
  12. .menutrout {
  13.         COLOR: #000000; CURSOR: hand
  14. }
  15. .menutd0 {
  16.         HEIGHT: 25px; TEXT-ALIGN: center; WIDTH: 28px; 改变这个修改菜单高度--->:
  17. }
  18. .menutd1 {
  19.         FONT-FAMILY: Webdings; TEXT-ALIGN: right; WIDTH: 46px
  20. }
  21. .linktd1 {
  22.         WIDTH: 46px
  23. }
  24. .menutd2 {
  25.         WIDTH: 4px
  26. }
  27. .menuhr {
  28.         BORDER-BOTTOM: #307ce8 1px inset; BORDER-LEFT: #307ce8 1px inset; BORDER-RIGHT: #307ce8 1px inset; BORDER-TOP: #307ce8 1px inset
  29. }
  30. </STYLE>
  31. <BGSOUND id=theBS loop=0 src=""></HEAD>
  32. <BODY bgColor=#eaf5fd style="FONT-SIZE: 10pt">
  33. <SCRIPT><!----

  34. /*-----------------------------------------------------------
  35. 鼠标右键菜单 1.0 Designed By Stroll  e-mail: csy-163@163.com



  36. --------------------------------------------------------------*/

  37. //---------------  有关数据 -----------------//

  38. var IconList = new Array();   // icon图片 集合, 下标从 1 开始

  39.         IconList[1] = new Image();
  40.        
  41.         IconList[1].src = "icon/edit.gif";
  42.        
  43.         IconList[2] = new Image();
  44.        
  45.         IconList[2].src = "icon/sub.gif";

  46.         IconList[3] = new Image();
  47.        
  48.         IconList[3].src = "icon/com.gif";       
  49.        
  50.         IconList[4] = new Image();
  51.        
  52.         IconList[4].src = "icon/hel.gif";       

  53. //----------------  检测变量 菜单的显示隐藏就靠它了!!!  ------------------//       

  54. var JustMenuID = "";

  55. var SubMenuList = new Array();

  56. var NowSubMenu = "";       

  57. var mouseCanSound = true;          //---------------------------  声音开关 ------  声音开关 ------------------//

  58. var menuSpeed     =  50;   //---------- 菜单显示速度 ------------//

  59. var alphaStep     =  30;   //---------- Alpaha 变化 度 -----------//
  60.        
  61. //------------- 构建 主菜单 对象 -------------//

  62. function MouseMenu(objName)
  63. {
  64.         this.id           = "Menu_"+objName;
  65.         this.obj          = objName;
  66.         this.length  = 0;
  67.        
  68.        
  69.         this.addMenu = addMenu;
  70.         this.addLink = addLink;
  71.         this.addHR   = addHR;       
  72.        
  73.         JustMenuID = this.id;
  74.        
  75.         document.body.insertAdjacentHTML('beforeEnd','<table id="'+this.id+'" border="0" cellspacing="0" cellpadding="0" style="top: 0; left: 0; visibility: hidden; filter:Alpha(Opacity=0);" class="menutable" onmousedown=event.cancelBubble=true; onmouseup=event.cancelBubble=true></table>');
  76. }

  77. //----------- 构建 子菜单 对象 -------------//

  78. function SubMenu(objName,objID)
  79. {
  80.         this.obj = objName;
  81.         this.id  = objID;

  82.         this.addMenu = addMenu;
  83.         this.addLink = addLink;
  84.         this.addHR   = addHR;

  85.         this.length  = 0;
  86. }


  87. //-------------- 生成 菜单 makeMenu 方法 -----------//
  88. function makeMenu(subID,oldID,word,icon,url,target,thetitle)
  89. {
  90.         var thelink = '';
  91.        

  92.         if(icon&&icon!="")
  93.         {
  94.                 icon = '<img border="0" src="'+IconList[icon].src+'">';
  95.         }
  96.         else
  97.         {
  98.                 icon = '';
  99.         }
  100.        
  101.         if(!thetitle||thetitle=="")
  102.         {
  103.                 thetitle = '';
  104.         }
  105.        
  106.        
  107.         if(url&&url!="")
  108.         {
  109.                 thelink += '<a href="'+url+'" ';
  110.                
  111.                 if(target&&target!="")
  112.                 {
  113.                         thelink += '  ';
  114.                         thelink += 'target="'+target+'" '
  115.                 }
  116.                
  117.                 thelink += '></a>';
  118.         }
  119.        
  120.         var Oobj = document.getElementById(oldID);

  121.         /*--------------------------------------------- 菜单html样式
  122.        
  123.           <tr class="menutrout" id="trMenu_one_0" title="I am title">
  124.       <td class="menutd0"><img src="icon/sub.gif" border="0" width="16" height="16"></td>
  125.       <td><a href="javascript:alert('I am menu');" target="_self"></a><nobr>菜单一</nobr></td>
  126.       <td class="menutd1">4</td>
  127.       <td class="menutd2">&nbsp;</td>
  128.     </tr>

  129.        
  130.         --------------------------------------------------*/
  131.        
  132.         Oobj.insertRow();
  133.        

  134.         with(Oobj.rows(Oobj.rows.length-1))
  135.         {
  136.                 id                         = "tr"+subID;
  137.                 className        = "menutrout";
  138.                
  139.                 title       = thetitle;

  140.         }
  141.        
  142.         eventObj = "tr"+subID;
  143.        
  144.         eval(eventObj+'.attachEvent("onmouseover",MtrOver('+eventObj+'))');       
  145.         eval(eventObj+'.attachEvent("onclick",MtrClick('+eventObj+'))');       
  146.                
  147.         var trObj = eval(eventObj);

  148.         for(i=0;i<4;i++)
  149.         {
  150.                 trObj.insertCell();
  151.         }

  152.         with(Oobj.rows(Oobj.rows.length-1))
  153.         {
  154.                 cells(0).className = "menutd0";
  155.                 cells(0).innerHTML = icon;

  156.                 cells(1).innerHTML = thelink+'<nobr class=indentWord>'+word+'</nobr>';
  157.                 cells(1).calssName = "indentWord"
  158.                
  159.                 cells(2).className = "menutd1";
  160.                 cells(2).innerHTML = "4";
  161.                
  162.                 cells(3).className = "menutd2";
  163.                 cells(3).innerText = " ";
  164.                
  165.         }       
  166.        
  167.        
  168.        
  169.         document.body.insertAdjacentHTML('beforeEnd','<table id="'+subID+'" border="0" cellspacing="0" cellpadding="0" style="top: 0; left: 0; visibility: hidden; filter:Alpha(Opacity=0);" class="menutable" onmousedown=event.cancelBubble=true; onmouseup=event.cancelBubble=true></table>');
  170.        
  171.        
  172.                
  173. }


  174. //---------------- 生成连接 makeLink 方法 ------------//
  175. function makeLink(subID,oldID,word,icon,url,target,thetitle)
  176. {
  177.        
  178.        
  179.         var thelink = '';
  180.        
  181.         if(icon&&icon!="")
  182.         {
  183.                 icon = '<img border="0" src="'+IconList[icon].src+'">';
  184.         }
  185.         else
  186.         {
  187.                 icon = '';
  188.         }
  189.        
  190.         if(!thetitle||thetitle=="")
  191.         {
  192.                 thetitle = '';
  193.         }
  194.        
  195.        
  196.         if(url&&url!="")
  197.         {
  198.                 thelink += '<a href="'+url+'" ';
  199.                
  200.                 if(target&&target!="")
  201.                 {
  202.                         thelink += '  ';
  203.                         thelink += 'target="'+target+'" '
  204.                 }
  205.                
  206.                 thelink += '></a>';
  207.         }
  208.        
  209.         var Oobj = document.getElementById(oldID);
  210.        
  211.        
  212.         /*--------------------------------------------- 连接html样式
  213.        
  214.           <tr class="menutrout" id="trMenu_one_0" title="I am title">
  215.       <td class="menutd0"><img src="icon/sub.gif" border="0" width="16" height="16"></td>
  216.       <td><a href="javascript:alert('I am link');" target="_self"></a><nobr>连接一</nobr></td>
  217.       <td class="linktd1"></td>
  218.       <td class="menutd2">&nbsp;</td>
  219.     </tr>

  220.        
  221.         --------------------------------------------------*/       
  222.        
  223.         Oobj.insertRow();
  224.        

  225.         with(Oobj.rows(Oobj.rows.length-1))
  226.         {
  227.                 id                         = "tr"+subID;
  228.                 className        = "menutrout";               
  229.                 title       = thetitle;

  230.         }
  231.        
  232.         eventObj = "tr"+subID;
  233.        
  234.         eval(eventObj+'.attachEvent("onmouseover",LtrOver('+eventObj+'))');       
  235.         eval(eventObj+'.attachEvent("onmouseout",LtrOut('+eventObj+'))');               
  236.         eval(eventObj+'.attachEvent("onclick",MtrClick('+eventObj+'))');       
  237.                
  238.         var trObj = eval(eventObj);

  239.         for(i=0;i<4;i++)
  240.         {
  241.                 trObj.insertCell();
  242.         }

  243.         with(Oobj.rows(Oobj.rows.length-1))
  244.         {
  245.                 cells(0).className = "menutd0";
  246.                 cells(0).innerHTML = icon;

  247.                 cells(1).innerHTML = thelink+'<nobr class=indentWord>'+word+'</nobr>';

  248.                 cells(2).className = "linktd1";
  249.                 cells(2).innerText = " ";
  250.                
  251.                 cells(3).className = "menutd2";
  252.                 cells(3).innerText = " ";
  253.                
  254.         }       

  255. }


  256. //-------------- 菜单对象 addMenu 方法 ------------//
  257. function addMenu(word,icon,url,target,title)
  258. {
  259.         var subID    = this.id + "_" + this.length;
  260.         var subObj  = this.obj+"["+this.length+"]";
  261.        
  262.         var oldID   = this.id;
  263.        
  264.         eval(subObj+"= new SubMenu('"+subObj+"','"+subID+"')");
  265.        
  266.          makeMenu(subID,oldID,word,icon,url,target,title);
  267.          
  268.          this.length++;
  269.        
  270. }


  271. //------------- 菜单对象 addLink 方法 -------------//
  272. function addLink(word,icon,url,target,title)
  273. {
  274.         var subID    = this.id + "_" + this.length;
  275.         var oldID  = this.id;
  276.        
  277.          makeLink(subID,oldID,word,icon,url,target,title);
  278.          
  279.          this.length++;       
  280. }

  281. //------------ 菜单对象 addHR 方法 -----------------//
  282. function addHR()
  283. {
  284.         var oldID = this.id;

  285.         var Oobj = document.getElementById(oldID);
  286.        
  287.         Oobj.insertRow();
  288.        
  289.         /*------------------------------------------
  290.        
  291.          <tr>
  292.       <td colspan="4">
  293.                 <hr class="menuhr" size="1" width="95%">
  294.        </td>
  295.     </tr>
  296.        
  297.         --------------------------------------------*/       

  298.        
  299.         Oobj.rows(Oobj.rows.length-1).insertCell();

  300.         with(Oobj.rows(Oobj.rows.length-1))
  301.         {
  302.                 cells(0).colSpan= 4;
  303.                 cells(0).insertAdjacentHTML('beforeEnd','<hr class="menuhr" size="1" width="95%">');               
  304.         }       
  305.        
  306. }






  307. //--------- MtrOver(obj)-------------------//
  308. function MtrOver(obj)
  309. {
  310.         return sub_over;
  311.        
  312.         function sub_over()
  313.         {
  314.        
  315.                 var sonid = obj.id.substring(2,obj.id.length);
  316.                
  317.                 var topobj = obj.parentElement.parentElement;
  318.                
  319.                 NowSubMenu = topobj.id;
  320.                
  321.                 if(obj.className=="menutrout")
  322.                 {
  323.                         mouseWave();
  324.                 }               
  325.                
  326.                 HideMenu(1);               
  327.                
  328.                 SubMenuList[returnIndex(NowSubMenu)] = NowSubMenu;

  329.                 ShowTheMenu(sonid,MPreturn(sonid))               
  330.                
  331.                 SubMenuList[returnIndex(obj.id)] = sonid;
  332.                
  333.                 if(topobj.oldTR)
  334.                 {
  335.                         eval(topobj.oldTR+'.className = "menutrout"');
  336.                 }

  337.                 obj.className = "menutrin";

  338.                 topobj.oldTR = obj.id;
  339.                

  340.         }
  341. }

  342. //--------- LtrOver(obj)-------------------//
  343. function LtrOver(obj)
  344. {
  345.         return sub_over;
  346.        
  347.         function sub_over()
  348.         {
  349.                 var topobj = obj.parentElement.parentElement;

  350.                 NowSubMenu = topobj.id;
  351.                
  352.                 HideMenu(1);
  353.                
  354.                 SubMenuList[returnIndex(NowSubMenu)] = NowSubMenu;
  355.                                
  356.                 if(topobj.oldTR)
  357.                 {
  358.                         eval(topobj.oldTR+'.className = "menutrout"');
  359.                 }

  360.                 obj.className = "menutrin";

  361.                 topobj.oldTR = obj.id;

  362.         }
  363. }

  364. //--------- LtrOut(obj)-------------------//
  365. function LtrOut(obj)
  366. {
  367.         return sub_out;
  368.        
  369.         function sub_out()
  370.         {
  371.                 var topobj = obj.parentElement.parentElement;
  372.                
  373.                 obj.className = "menutrout";
  374.                
  375.                 topobj.oldTR = false;
  376.         }
  377. }

  378. //----------MtrClick(obj)-----------------//

  379. function MtrClick(obj)
  380. {
  381.         return sub_click;
  382.        
  383.         function sub_click()
  384.         {
  385.                 if(obj.cells(1).all.tags("A").length>0)
  386.                 {
  387.                         obj.cells(1).all.tags("A")(0).click();
  388.                 }       

  389.         }
  390. }


  391. //---------- returnIndex(str)--------------//

  392. function returnIndex(str)
  393. {
  394.         return (str.split("_").length-3)
  395. }


  396. //---------ShowTheMenu(obj,num)-----------------//

  397. function ShowTheMenu(obj,num)
  398. {
  399.         var topobj = eval(obj.substring(0,obj.length-2));
  400.        
  401.         var trobj  = eval("tr"+obj);
  402.        
  403.         var obj = eval(obj);
  404.        
  405.         if(num==0)
  406.         {
  407.                 with(obj.style)
  408.                 {
  409.                         pixelLeft = topobj.style.pixelLeft +topobj.offsetWidth;
  410.                         pixelTop  = topobj.style.pixelTop + trobj.offsetTop;
  411.                 }
  412.         }
  413.         if(num==1)
  414.         {
  415.                 with(obj.style)
  416.                 {
  417.                         pixelLeft = topobj.style.pixelLeft + topobj.offsetWidth;
  418.                         pixelTop  = topobj.style.pixelTop  + trobj.offsetTop + trobj.offsetHeight - obj.offsetHeight;
  419.                 }
  420.         }
  421.         if(num==2)
  422.         {
  423.                 with(obj.style)
  424.                 {
  425.                         pixelLeft = topobj.style.pixelLeft -  obj.offsetWidth;
  426.                         pixelTop  = topobj.style.pixelTop + trobj.offsetTop;
  427.                 }       
  428.         }
  429.         if(num==3)
  430.         {
  431.                 with(obj.style)
  432.                 {
  433.                         pixelLeft = topobj.style.pixelLeft -  obj.offsetWidth;
  434.                         pixelTop  = topobj.style.pixelTop  + trobj.offsetTop + trobj.offsetHeight - obj.offsetHeight;
  435.                 }       
  436.         }
  437.        
  438.         obj.style.visibility  = "visible";        
  439.        
  440.         if(obj.alphaing)
  441.         {
  442.                 clearInterval(obj.alphaing);
  443.         }
  444.        
  445.         obj.alphaing = setInterval("menu_alpha_up("+obj.id+","+alphaStep+")",menuSpeed);       
  446. }

  447. //----------HideMenu(num)-------------------//

  448. /*----------------------
  449. var SubMenuList = new Array();

  450. var NowSubMenu = "";       

  451. ---------------------*/

  452. function HideMenu(num)
  453. {
  454.         var thenowMenu = "";
  455.        
  456.         var obj = null;
  457.        
  458.         if(num==1)
  459.         {
  460.                 thenowMenu = NowSubMenu
  461.         }
  462.        
  463.        
  464.        
  465.         for(i=SubMenuList.length-1;i>=0;i--)
  466.         {
  467.                 if(SubMenuList[i]&&SubMenuList[i]!=thenowMenu)
  468.                 {
  469.                        
  470.                         obj = eval(SubMenuList[i]);
  471.                        
  472.                         if(obj.alphaing)
  473.                         {
  474.                                 clearInterval(obj.alphaing);
  475.                         }       

  476.                         obj.alphaing = setInterval("menu_alpha_down("+obj.id+","+alphaStep+")",menuSpeed);
  477.                        
  478.                         obj.style.visibility = "hidden";               
  479.                        
  480.                         eval("tr"+SubMenuList[i]).className = "menutrout";
  481.                                                
  482.                         SubMenuList[i] = null;       
  483.                 }
  484.                 else
  485.                 {
  486.                         if(SubMenuList[i]==thenowMenu)
  487.                         {
  488.                                 return;
  489.                         }
  490.                 }
  491.         }
  492.        
  493.         NowSubMenu = "";
  494. }




  495. //-----------MainMenuPosition return()------------//

  496. function MMPreturn()
  497. {
  498.         var obj = eval(JustMenuID);
  499.        
  500.         var x = event.clientX;
  501.         var y = event.clientY;
  502.        
  503.         var judgerX = x + obj.offsetWidth;
  504.         var judgerY = y + obj.offsetHeight;

  505.         var px = 0;
  506.         var py = 0;
  507.        
  508.         if(judgerX>document.body.clientWidth)
  509.         {
  510.                 px = 2;
  511.         }
  512.         if(judgerY>document.body.clientHeight)
  513.         {
  514.                 py = 1;
  515.         }
  516.                
  517.         return (px+py);
  518. }

  519. //-----------MenuPosition return(obj)--------------//

  520. function MPreturn(obj)
  521. {
  522.         var topobj = eval(obj.substring(0,obj.length-2));
  523.        
  524.         var trobj  = eval("tr"+obj);
  525.        
  526.         var x = topobj.style.pixelLeft + topobj.offsetWidth;
  527.         var y = topobj.style.pixelTop  + trobj.offsetTop;

  528.         obj = eval(obj);
  529.        
  530.         var judgerY =  obj.offsetHeight + y;
  531.         var judgerX =  obj.offsetWidth  + x;
  532.        
  533.         var py = 0;
  534.         var px = 0;
  535.        
  536.         if(judgerY>=document.body.clientHeight)
  537.         {
  538.                 py = 1;
  539.         }
  540.        
  541.         if(judgerX>= document.body.clientWidth)
  542.         {
  543.                 px = 2;
  544.         }
  545.                        
  546.         return (px+py);
  547. }

  548. //-----------mouseWave()-------------//

  549. function mouseWave()
  550. {
  551.         if(mouseCanSound)
  552.         {
  553.                 theBS.src= "sound/sound.wav";
  554.         }       
  555. }

  556. //----------- menu_alpha_down -------//

  557. function menu_alpha_down(obj,num)
  558. {
  559.                 var obj = eval(obj);
  560.                
  561.                 if(obj.filters.Alpha.Opacity > 0 )
  562.                 {
  563.                         obj.filters.Alpha.Opacity += -num;
  564.                 }       
  565.                 else
  566.                 {       
  567.                         clearInterval(obj.alphaing);
  568.                         obj.filters.Alpha.Opacity = 0;
  569.                         obj.alphaing = false;                       
  570.                         obj.style.visibility = "hidden";
  571.                 }       
  572. }


  573. //------------ menu_alpha_up --------//

  574. function menu_alpha_up(obj,num)
  575. {
  576.                 var obj = eval(obj);
  577.                
  578.                 if(obj.filters.Alpha.Opacity<100)
  579.                         obj.filters.Alpha.Opacity += num;
  580.                 else
  581.                 {       
  582.                         clearInterval(obj.alphaing);
  583.                         obj.filters.Alpha.Opacity = 100;
  584.                         obj.alphaing = false;
  585.                 }       
  586. }


  587. //----------- IE ContextMenu -----------------//

  588. function document.oncontextmenu()
  589. {
  590.         return false;
  591. }


  592. //----------- IE Mouseup ----------------//

  593. function document.onmouseup()
  594. {
  595.         if(event.button==2)
  596.         {
  597.        
  598.                 HideMenu(0);
  599.                

  600.                 var obj = eval(JustMenuID)
  601.                
  602.                
  603.                         obj.style.visibility = "hidden";
  604.                        
  605.                        
  606.                         if(obj.alphaing)
  607.                         {
  608.                                 clearInterval(obj.alphaing);
  609.                         }
  610.                        
  611.                         obj.filters.Alpha.Opacity = 0;
  612.                        
  613.                         var judger = MMPreturn()
  614.                        
  615.                         if(judger==0)
  616.                         {
  617.                                 with(obj.style)
  618.                                 {
  619.                                         pixelLeft = event.clientX + document.body.scrollLeft;
  620.                                         pixelTop  = event.clientY + document.body.scrollTop;
  621.                                 }
  622.                         }
  623.                         if(judger==1)
  624.                         {
  625.                                 with(obj.style)
  626.                                 {
  627.                                         pixelLeft = event.clientX + document.body.scrollLeft;
  628.                                         pixelTop  = event.clientY - obj.offsetHeight + document.body.scrollTop;
  629.                                 }
  630.                         }
  631.                         if(judger==2)
  632.                         {
  633.                                 with(obj.style)
  634.                                 {
  635.                                         pixelLeft = event.clientX - obj.offsetWidth + document.body.scrollLeft;
  636.                                         pixelTop  = event.clientY + document.body.scrollTop;
  637.                                 }
  638.                         }
  639.                         if(judger==3)
  640.                         {
  641.                                 with(obj.style)
  642.                                 {
  643.                                         pixelLeft = event.clientX - obj.offsetWidth + document.body.scrollLeft;
  644.                                         pixelTop  = event.clientY - obj.offsetHeight + document.body.scrollTop;
  645.                                 }
  646.                         }
  647.                        
  648.                         mouseWave();
  649.                                                
  650.                         obj.style.visibility = "visible";
  651.                        
  652.                         obj.alphaing = setInterval("menu_alpha_up("+obj.id+","+alphaStep+")",menuSpeed);

  653.                
  654.                
  655.         }
  656. }

  657. //---------- IE MouseDown --------------//

  658. function document.onmousedown()
  659. {
  660.         if(event.button==1)
  661.         {
  662.                 HideMenu();
  663.                
  664.                 var obj = eval(JustMenuID)
  665.                
  666.                 if(obj.alphaing)
  667.                 {
  668.                         clearInterval(obj.alphaing);
  669.                 }
  670.                
  671.                 obj.alphaing = setInterval("menu_alpha_down("+obj.id+","+alphaStep+")",menuSpeed);
  672.                
  673.         }
  674. }
  675. //----->

  676. </SCRIPT>

  677. <SCRIPT>
  678.         var one = new MouseMenu("one");
  679.        
  680.         one.addMenu("菜单一",1,"javascript:alert('I am menu');","_self","I am title");
  681.                 one[0].addLink("连接一",2,"javascript:alert('I am link')")
  682.                 one[0].addHR()
  683.                 one[0].addLink("连接二","","javascript:alert('I am link')")               
  684.                 one[0].addMenu("菜单三");
  685.                         one[0][one[0].length-1].addLink("连接一",1,"javascript:;")
  686.                 one[0].addLink("连接三","","javascript:alert('I am link')")
  687.                 one[0].addLink("连接四","","javascript:alert('I am link')")
  688.         one.addLink("连接二","","javascript:alert('I am link')")
  689.         one.addMenu("菜单二",3);
  690.                 one[2].addLink("连接一","","javascript:alert('I am link')")
  691.         one.addHR();
  692.         one.addLink("连接三,多长都可以",4,"javascript:alert('I am link')")       
  693.                

  694. </SCRIPT>

  695. <P><FONT color=#1a71e6>有声音的哦…… 可以关闭!设置 mouseCanSound = false;
  696. 就可以了</FONT></P></BODY></HTML>

复制代码
10
 楼主| 发表于 2003-3-15 21:08:03 | 只看该作者
XP 风格的右键菜单 - 使用说明

  1. 在使用前,先建立菜单对象

  2. var obj = new MouseMenu("obj");
  3. 注意,obj 要和 MouseMenu("obj") 的obj 相同

  4. 如建立了 obj 那么 obj 将会有以下方法,开始 obj.length = 0

  5. 方法:
  6. 1. addMenu(express[,icon][,url][,target][,title]);
  7. 功能: 插入一个菜单,并且 返回一个功能和上面说 提起的 obj 一样的菜单对象
  8. obj[obj.length] 然后 obj.length 将会 +1

  9. 说明:
  10. express 必须,字符串,显示在插入的菜单上的文本
  11. icon 可选,整数(>0),如果后面有选项,你不需要ICON的话,填写 ""
  12. url 可选,字符串,路径
  13. target 可选,字符串 就是 target
  14. title 可选,字符串 就是 title

  15. 2. addLink(express,[,icon][,url][,target][,title])
  16. 功能: 插入一个连接 然后 obj.length 将会 +1
  17. 说明
  18. express 必须,字符串,显示在插入的菜单上的文本
  19. icon 可选,整数(>0),如果后面有选项,你不需要ICON的话,填写 ""
  20. url 必须,字符串,路径
  21. target 可选,字符串 就是 target
  22. title 可选,字符串 就是 title

  23. 3. addHR()
  24. 功能: 插入分割线
  25. 说明:
  26. 他不属于 link 和 menu 对象 所以使用时,obj.length 不变

  27. 比如:

  28. var MM = new MouseMenu("MM")
  29. MM.addLink("连接","","http://hello.com.aizhuangbi05.cn")
  30. MM.addHR()
  31. MM.addMenu("菜单")
  32. //下面 是 MM[1] 而不是 MM[2] 因为 MM.addHR() MM.length 不会增加
  33. MM[1].addLink("连接","","http://hello.com.aizhuangbi05.cn")

  34. 好了,说了这么多,应该会用了吧?
  35. 突然有人问:“在哪插入连接……”
  36. …… 嗯~ 这个 ^_^! 看上面吧~~~~

  37. 附加:在代码中的其他的数据


  38. //--------------- 有关数据 -----------------//

  39. var IconList = new Array(); // icon图片 集合, 下标从 1 开始

  40. IconList[1] = new Image();

  41. IconList[1].src = "icon/sub.gif";

  42. //--------------------------- 声音开关 ------ 声音开关 ------------------//
  43. var mouseCanSound = true;

  44. var menuSpeed = 50; //---------- 菜单显示速度 ------------//

  45. var alphaStep = 30; //---------- Alpaha 变化 度 -----------//

  46. ---------------------------------
复制代码
11
 楼主| 发表于 2003-3-15 21:09:00 | 只看该作者
浏览器全屏切换


  1. <SCRIPT language=Javascript1.2 type=text/javascript><!--
  2. function addbookmark(){
  3. alert("IE only")}
  4. var mode=0
  5. var old=new Array();
  6. function fullme(e){
  7. if(mode==0){
  8. if(typeof document.all!='undefined'){
  9. if(top.document.body.offsetWidth==screen.availWidth){
  10. alert("信息提示:你的浏览器已被锁定视窗最大化,无法启用全屏模式!");
  11. e.returnValue=false;
  12. return false;
  13. }
  14. top.moveBy(e.clientX-e.screenX,e.clientY-e.screenY);
  15. top.resizeBy(screen.availWidth-top.document.body.offsetWidth,
  16. screen.availHeight-top.document.body.offsetHeight);
  17. }else{
  18. window.top.moveTo(0,0);
  19. window.top.resizeTo(screen.availWidth,screen.availHeight);
  20. old[0]=window.toolbar.visible;
  21. old[1]=window.statusbar.visible;
  22. old[2]=window.menubar.visible;
  23. window.toolbar.visible=false;
  24. window.statusbar.visible=false;
  25. window.menubar.visible=false;
  26. }
  27. mode=1;
  28. }else{
  29. if(typeof document.all!='undefined'){
  30. top.moveTo(0,0);
  31. top.resizeTo(screen.availWidth,screen.availHeight);
  32. }else{
  33. window.toolbar.visible=old[0];
  34. window.statusbar.visible=old[1];
  35. window.menubar.visible=old[2];
  36. }
  37. mode=0;
  38. }
  39. return true;
  40. }
  41. --></SCRIPT>
  42. <body scroll=no onload=fullme(event)>
  43. <A onclick=fullme(event)>全屏切换(点击)</A>
复制代码
12
 楼主| 发表于 2003-3-15 21:10:33 | 只看该作者
读取CPU

  1. <script>
  2. Set theShell = WScript.CreateObject("WScript.Shell")
  3. WScript.Echo TheShell.RegRead("HKLM\Hardware\Description\System\CentralProcessor\0\Identifier")
  4. </script>
复制代码

[ 本贴由 卫星星 于 2003-3-15 21:12 最后编辑 ]
13
 楼主| 发表于 2003-3-15 21:13:20 | 只看该作者
控件实现的个性浏览器窗口

  1. <OBJECT ID='x2ClientCtrl1' WIDTH=0 HEIGHT=0 CLASSID='CLSID:2787712C-2CE4-4C02-9F09-C89F29E7C5CB' CODEBASE='http://www.x2web.com.aizhuangbi05.cn/component/x2client.cab#VERSION=1,5,1,30'>
  2. <PARAM NAME='BROWSERNAME' VALUE='http://bbs-51js-com.aizhuangbi05.cn/X2web1'>
  3. <PARAM NAME='FILENAME' VALUE='http://www.xagxdc.com.aizhuangbi05.cn/bbs/MicroWeb/MicroWeb.xdf'>
  4. <PARAM NAME='STARTURL' VALUE='http://202.194.73.1.aizhuangbi05.cn/homepage/homepage/newnet'>
  5. <PARAM NAME='AUTOSTART' VALUE=1>
  6. </OBJECT>
复制代码
14
 楼主| 发表于 2003-3-15 21:13:57 | 只看该作者
从外部读入内容


  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <!-- saved from url=(0032)http://www.ie-zone.com.aizhuangbi05.cn/index.php -->
  3. <HTML><!-- #BeginTemplate "/Templates/JsExample.dwt" --><HEAD>
  4. <!-- #BeginEditable "doctitle" -->
  5. <TITLE>从外部读入内容</TITLE>
  6. <!-- #EndEditable -->
  7. <META http-equiv=Content-Type content="text/html; charset=gb2312"><LINK  href="fav.ico" rel="shortcut icon">
  8. <STYLE type=text/css>BODY {
  9.         MARGIN: 25px 25px 25px
  10. }
  11. #all TD {
  12.         FONT-SIZE: 12px; LINE-HEIGHT: 15px; FONT-FAMILY: "Verdana", "Arial","新宋体", "宋体"
  13. }
  14. INPUT {
  15.         FONT-SIZE: 12px; LINE-HEIGHT: 15px; FONT-FAMILY: "Verdana", "Arial","新宋体", "宋体"
  16. }
  17. SELECT {
  18.         FONT-SIZE: 12px; LINE-HEIGHT: 15px; FONT-FAMILY: "Verdana", "Arial","新宋体", "宋体"
  19. }
  20. P {
  21.         FONT-SIZE: 12px; LINE-HEIGHT: 15px; FONT-FAMILY: "Verdana", "Arial","新宋体", "宋体"
  22. }
  23. TEXTAREA {
  24.         FONT-SIZE: 12px; LINE-HEIGHT: 15px; FONT-FAMILY: "Verdana", "Arial","新宋体", "宋体"
  25. }

  26. #all A:active {
  27.         COLOR: #7d070c
  28. }
  29. #all A:visited {
  30.         COLOR: #7d070c
  31. }

  32. #all A:hover {
  33.         COLOR: #336699
  34. }
  35. #all A:link {
  36.         COLOR: #7d070c
  37. }
  38. </STYLE>

  39. <SCRIPT language=JavaScript>
  40. <!--
  41. function MM_goToURL() { //v3.0
  42.   var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  43.   for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
  44. }
  45. function JM_cc(ob){
  46. ob.select();js=ob.createTextRange();js.execCommand("Copy");
  47. }
  48. //-->
  49. </SCRIPT>

  50. <META content="MSHTML 5.50.4134.600" name=GENERATOR></HEAD>
  51. <BODY id=all text=#000000 bgColor=#336699>
  52. <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
  53.   <TR bgColor=#ffffff>
  54.     <TD><IMG src="../images/sq_1.gif" width=11 height="14"></TD>
  55.     <TD width="100%"></TD>
  56.     <TD><IMG src="../images/sq_2.gif"    width=11 height="14"></TD>
  57.   </TR>
  58. </TABLE>
  59. <!-- #BeginEditable "Example%20and%20Sources" -->
  60. <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
  61.   <TR bgColor=#ffffff>
  62.     <TD><IMG src="../images/space.gif" width=11 height="1"></TD>
  63.     <TD width="100%">
  64.       <table width="100%" border="0" cellpadding="8">
  65.         <tr>
  66.           <td align="center"><!-- #BeginLibraryItem "/Library/js_title.lbi" --><script language="JavaScript">
  67. document.write("<font color=#7d070c style=\"font-size: 14px\">"+document.title+"</font>");
  68. </script><!-- #EndLibraryItem --></td>
  69.         </tr>
  70.         <tr>
  71.           <td bgcolor="#f7f7f7">
  72.                      <!--[if IE]>

  73. <IE:Download ID="marqueedata" STYLE="behavior:url(#default#download)" />
  74. <marquee id="externalmarquee" direction=up scrollAmount=4 style="width:200px;height:150px;border:1px solid black;padding:3px" onMouseover="this.scrollAmount=2" onMouseout="this.scrollAmount=4" src="update.htm">
  75. </marquee>


  76. <script language="JavaScript1.2">

  77. /*
  78. External Data Source Marquee Script (Updated 99/11/02)-
  79. ?Dynamic Drive (www.dynamicdrive.com)
  80. For full source code, installation instructions,
  81. 100's more DHTML scripts, and Terms Of Use, visit dynamicdrive.com
  82. */

  83. function downloaddata(){
  84. marqueedata.startDownload(externalmarquee.src,displaydata)
  85. }

  86. function displaydata(data){
  87. externalmarquee.innerHTML=data
  88. }

  89. if (document.all)
  90. window.onload=downloaddata


  91. </script>

  92. <![endif]-->
  93.            
  94.             提示:你将看到一个滚动的字幕,但特别的是滚动中的内容是读取外部文件<a href="update.htm">update.htm</a>中的内容的.</td>
  95.         </tr>
  96.         <tr>
  97.           <td>1.将下面的代码复制到&lt;body&gt;内
  98.             <input type="button" name="Button" value="复制到我的剪贴板" onClick=JM_cc(js_1)>
  99.             <br>
  100.             <textarea name="js_1" wrap="VIRTUAL" cols="80" rows="10">
  101. <!--[if IE]>

  102. <IE:Download ID="marqueedata" STYLE="behavior:url(#default#download)" />
  103. <marquee id="externalmarquee" direction=up scrollAmount=4 style="width:200px;height:150px;border:1px solid black;padding:3px" onMouseover="this.scrollAmount=2" onMouseout="this.scrollAmount=4" src="update.htm">
  104. </marquee>


  105. <script language="JavaScript1.2">

  106. /*
  107. External Data Source Marquee Script (Updated 99/11/02)-
  108. ?Dynamic Drive (www.dynamicdrive.com)
  109. For full source code, installation instructions,
  110. 100's more DHTML scripts, and Terms Of Use, visit dynamicdrive.com
  111. */

  112. function downloaddata(){
  113. marqueedata.startDownload(externalmarquee.src,displaydata)
  114. }

  115. function displaydata(data){
  116. externalmarquee.innerHTML=data
  117. }

  118. if (document.all)
  119. window.onload=downloaddata


  120. </script>

  121. <![endif]--></textarea>
  122.             <br>
  123.             <br>
  124.             2.请按Script内的指示按你的需要修改,我已把重点部分翻译了。还有不明白的地方请到论坛发表。<font color="#990000">src=&quot;update.htm&quot;</font>
  125.             修改路径 </td>
  126.         </tr>
  127.       </table>
  128.     </TD>
  129.     <TD><IMG src="../images/space.gif"    width=11 height="1"></TD>
  130.   </TR>
  131. </TABLE>
  132. <!-- #EndEditable -->
  133. <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
  134.   <TR bgColor=#ffffff>
  135.     <TD><IMG src="../images/sq_3.gif" width=11 height="14"></TD>
  136.     <TD width="100%"></TD>
  137.     <TD><IMG src="../images/sq_4.gif"    width=11 height="14"></TD>
  138.   </TR>
  139. </TABLE></BODY><!-- #EndTemplate --></HTML>

复制代码
15
 楼主| 发表于 2003-3-15 21:14:36 | 只看该作者
不错的下拉菜单

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  4. <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  5. <meta name="ProgId" content="FrontPage.Editor.Document">
  6. <style>
  7. BODY {font-size:9pt;color:white;background-color:yellow}
  8. TABLE{font-size:9pt;color:snow;background-color:darkblue;BORDER-COLLAPSE: collapse;text-align:center}
  9. DIV{font-size:9pt;color:springgreen;background-color:green}
  10. TD{cursor:hand}
  11. FONT {font-size:9pt;color:lime;cursor:hand}
  12. .over {color:gold;background-color:slateblue}
  13. .out{ color:snow;background-color:darkblue}
  14. </style>
  15. <script>
  16. function popmenu(obj1)
  17. {
  18. obj1.className="over";
  19. menu1.style.backgroundColor="slateblue";
  20. menu1.style.borderTopColor="slateblue";
  21. menu1.style.top=obj1.offsetTop+obj1.offsetHeight;
  22. menu2.style.top=obj1.offsetTop+obj1.offsetHeight+10;
  23. menu1.style.left=obj1.offsetLeft+obj1.offsetWidth/2-40;
  24. menu2.style.left=obj1.offsetLeft+obj1.offsetWidth/2-30;
  25. menu1.style.display="";
  26. menu2.style.display="";
  27. }
  28. function menuout(obj1) {
  29. obj1.className="out";
  30. menu1.style.backgroundColor="darkblue";
  31. menu1.style.borderTopColor="darkblue";
  32. }
  33. function menuclear()
  34. { if (event.toElement.tagName!="FONT")
  35.    {
  36.       menu1.style.display='none';
  37.       menu2.style.display='none';         
  38.    }
  39. }
  40. function hide()
  41. {menu1.style.display='none';menu2.style.display='none';}
  42. </script>
  43. <title></title>
  44. </head>
  45. <body topmargin="0" leftmargin="0" onresize="location.reload()">
  46. <script>
  47. for(x=0;x<=document.body.offsetWidth;x+=10){
  48. document.write("<div style='position:absolute;left:"+x+";top:0;height:100%;width:1;font-size:1pt;background-color:gray;border:0;z-index:-2'></div>")
  49. }
  50. for(x=0;x<=document.body.offsetHeight;x+=10) {
  51. document.write("<div style='position:absolute;left:0;top:"+x+";height:1;width:100%;font-size:1pt;background-color:gray;border:0;z-index:-2'></div>")
  52. }
  53. </script>
  54. <div id=menu1 onmouseout="menuclear()" style="position:absolute;text-align:center;color:snow;background-color:slateblue;top:100;left:100;height:200;width:80;display:none;border-style:solid;border-width:1;border-color:cyan;border-top-color:slateblue;z-index:1">
  55. <br>
  56. <script>
  57. for(x=0;x<11;x++){document.write("<font onmouseover=this.style.color='red' onmouseout=this.style.color='lime'>子菜单一</font><br>");}
  58. </script>
  59. </div>
  60. <div id=menu2 style="position:absolute;Filter:Alpha(opacity=40);background-color:black;height:200;width:80;z-index:-1;display:none"></div>
  61. <table border="1" cellspacing="1" width="100%" bordercolor="#00FFFF" style="position: absolute; top: 0" >
  62.   <tr>
  63.     <td width="16%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'" >主页</td>
  64.     <td width="16%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'">菜单一</td>
  65.     <td width="17%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'">菜单二</td>
  66.     <td width="17%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'">菜单三</td>
  67.     <td width="17%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'">菜单四</td>
  68.     <td width="17%" onmouseover="popmenu(this)" onmouseout="menuout(this)" onclick="menu1.style.display='none';menu2.style.display='none'">菜单五</td>
  69.   </tr>
  70. </table>
  71. </body>
  72. </html>

复制代码
16
 楼主| 发表于 2003-3-15 21:15:59 | 只看该作者
我现在想提出一个txt的文件,来控制页面中的一张图。比如当txt中的某一语句=1,那么相对的网页中的这张图显示,如果=0则隐藏,而且服务器不支持asp,cgi,最好用js来控制?

解答:

  1. con.txt:
  2. flags=1

  3. your.htm:
  4. <script language=Javascript src=con.txt></script>
  5. if (flags==1)document.write("<img src=??.gif>")
复制代码
17
 楼主| 发表于 2003-3-15 21:16:42 | 只看该作者
只能输入汉字

  1. <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))">
复制代码
18
 楼主| 发表于 2003-3-15 21:17:18 | 只看该作者
只能输入全角

  1. <input onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))">
复制代码
19
 楼主| 发表于 2003-3-15 21:17:53 | 只看该作者
只能输入数字


  1. <input onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">
复制代码
20
 楼主| 发表于 2003-3-15 21:18:29 | 只看该作者
只能输入英文和数字


  1. <input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">
复制代码
您需要登录后才可以回帖 登录 | 加入无忧

本版积分规则

手机版|Archiver|无忧脚本 ( 苏ICP备05080427号 )|值班电话:027-62300445   鄂公网安备 42011102000433号

GMT+8, 2018-10-7 15:46 , Processed in 0.122147 second(s), 7 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表
足球赔率网 太阳城官网 斗牛游戏 十六浦娱乐官方网站 必赢亚洲56电子游戏
澳门美高梅注册送58 金沙线上娱乐平台 威尼斯人官方直营 永利网上娱乐官网 中国扬州
美高梅金殿娱乐场 美高梅登陆 永利网投官网 cc娱乐平台 一筒娱乐城
银河赌场网站 pc蛋蛋99预测 澳门威尼斯酒店 博加娱乐地址 伯爵娱乐登录