Board logo

标题: [交流] 会js编程的请进 [打印本页]

作者: neo007    时间: 2008-8-17 20:04     标题: 会js编程的请进

  1. <script language="JavaScript">
  2. var strTopDomain = document.location.host;
  3. var txtRange;
  4. var strInput = window.prompt("请输入一个或多个关键字(用逗号分隔)\n空白则清除高亮", "");
  5. function Search_HighLight(doc)
  6. {
  7.     var needScroll = true;
  8.     var strDomain = doc.location.host;
  9.     if (strInput)
  10.     {
  11.         var strKey = strInput.split(',');
  12.         for (var i = 0; i < strKey.length; i++)
  13.         {
  14.             if (typeof(doc.body.createTextRange) == "object")
  15.             {
  16.                 txtRange = doc.body.createTextRange();
  17.                 while (txtRange.findText(strKey[i]))
  18.                 {
  19.                     if (needScroll)
  20.                     {
  21.                         txtRange.scrollIntoView();
  22.                         needScroll = false;
  23.                     }
  24.                     txtRange.pasteHTML("<span id='search_highlight' style='background-color:yellow'>" + txtRange.text + "</span>");
  25.                 }
  26.             }
  27.         }
  28.     }
  29.     else
  30.     {
  31.         var txtRangeOld = doc.all["search_highlight"];
  32.         if (txtRangeOld)
  33.             if (txtRangeOld.length)
  34.                 for (var i = txtRangeOld.length - 1; i >= 0; i--)
  35.                     txtRangeOld[i].outerHTML = txtRangeOld[i].innerHTML;
  36.             else
  37.                 txtRangeOld.outerHTML = txtRangeOld.innerHTML;
  38.     }
  39.     if ((strDomain == strTopDomain) && (doc.frames))
  40.     {
  41.         for (var i = 0; i < doc.frames.length; i++)
  42.         {
  43.             try
  44.             {
  45.                 Search_HighLight(doc.frames[i].document);
  46.             }
  47.             catch (e) {}
  48.         }
  49.     }
  50. }
  51. Search_HighLight(document);
  52. </script>


  53. var strTopDomain = document.location.host;
  54. var txtRange;
  55. var strInput = window.prompt("请输入一个或多个关键字(用逗号分隔)\n空白则清除高亮", "");
  56. function Search_HighLight(doc)
  57. {
  58.     var needScroll = true;
  59.     var strDomain = doc.location.host;
  60.     if (strInput)
  61.     {
  62.         var strKey = strInput.split(',');
  63.         for (var i = 0; i = 0; i--)
  64.                     txtRangeOld[i].outerHTML = txtRangeOld[i].innerHTML;
  65.             else
  66.                 txtRangeOld.outerHTML = txtRangeOld.innerHTML;
  67.     }

  68.     if ((strDomain == strTopDomain) && (doc.frames))
  69.     {
  70.         for (var i = 0; i < doc.frames.length; i++)
  71.         {
  72.             try
  73.             {
  74.                 Search_HighLight(doc.frames[i].document);
  75.             }
  76.             catch (e) {}
  77.         }
  78.     }
  79. }
  80. Search_HighLight(document);
复制代码


以上是"页面内查找及高亮关键字"插件的代码. 会js的朋友能否帮忙改一下, 不要window.prompt("请输入一个或多个关键字...), 而是从搜索栏读取关键字....

谢谢
作者: neo007    时间: 2008-8-20 10:58

这里好冷啊...............
作者: yjwgi    时间: 2008-8-20 11:23

不会。帮楼主顶一下
作者: neo007    时间: 2008-8-21 11:00

没看到的朋友都来看看了
作者: haokeyy    时间: 2008-8-21 12:46

弄成 exe 或者 dll ,从搜索栏读取关键字
作者: neo007    时间: 2008-8-22 11:00

原帖由 haokeyy 于 2008-8-21 12:46 发表 http://bbs.ioage.com/cn/images/common/back.gif
弄成 exe 或者 dll ,从搜索栏读取关键字

谢谢.
exe我会写. 假如叫做yyyy.exe. 然后呢? yyyy.exe怎么写入上述代码? JS我不懂
作者: haokeyy    时间: 2008-8-23 16:47

原帖由 neo007 于 2008-8-22 11:00 发表 http://bbs.ioage.com/cn/images/common/back.gif

谢谢.
exe我会写. 假如叫做yyyy.exe. 然后呢? yyyy.exe怎么写入上述代码? JS我不懂


你换浏览器了啊   http://www.5igb.com/bbs/viewthread.php?tid=10882&extra=page%3D4
作者: neo007    时间: 2008-8-23 18:31

hehe. 是我.
希望两个浏览器的好功能可以统一.




欢迎光临 世界之窗论坛 (http://bbs.theworld.cn./) Powered by Discuz! 7.2