1

我想使用 jquery 实现类似于Google 快速滚动扩展的功能,用于提取搜索结果,因此当打开完整文档(在同一网站内)时,它让用户有机会直接进入提取位置。

这是我在搜索“食物”时从搜索引擎返回的示例。

<doc>
  <docid>129305</docid>
  <title><span class='highlighted'>Food</span></title>
  <summary>
    <summarytext>Papers subject to Negative Resolution:    4 <span class='highlighted'>Food</span>        <span class='highlighted'>Food</span> Irradiation (England) Regulations 2009 (S.I.,  2009,  No.  1584),  dated 24 June 2009 (by Act), </summarytext>
  </summary>
  <paras>
    <paraitemcount>2</paraitemcount>
    <para>
      <paraitem>1</paraitem>
      <paraid>42</paraid>
      <pararelevance>100</pararelevance>
      <paraweights>50</paraweights>
      <paratext>4 <span class='highlighted'>Food</span></paratext>
    </para>
    <para>
      <paraitem>2</paraitem>
      <paraid>54</paraid>
      <pararelevance>100</pararelevance>
      <paraweights>50</paraweights>
      <paratext><span class='highlighted'>Food</span> Irradiation (England) Regulations 2009 (S.I.,  2009,  No.  1584),  dated 24 June 2009 (by Act),  with an Explanatory Memorandum and an Impact Assessment (</paratext>
    </para>
  </paras>
</doc>

如您所见,搜索引擎返回了一个包含一个摘要和两个摘录的文档。

因此,假设用户点击搜索结果页面中的第二个摘录,浏览器将在同一网站中打开详细文档,并为用户提供访问该摘录的可能性,就像 Google 快速滚动扩展程序所做的那样。

是否有用于此的现有 jquery 脚本?如果没有,您能否建议任何 jquery/javascript 代码来简化我的任务来实现这一点。

笔记:

  • 我可以从文档详细信息页面访问摘录。
  • 我知道在某些情况下,提取中的 HTML 可能与详细信息页面中的略有不同,找不到匹配项。
  • 搜索引擎不会返回提取的位置。
  • 目前我正在尝试理解扩展使用的 JS 代码。
4

2 回答 2

0

我不太了解细节,您的应用程序中有什么以及在哪里以及您的 JS 在哪里(给定的文档是在框架中还是在同一个文档中?)。基本上,如果您有一个服务器端应用程序,您需要在 JQuery 中形成一个链接,/highlighter.php?search=Food#2并在突出显示的文档中放置一个锚点。

如果您只需要使用 JQuery 执行此操作,那么我猜

<frame name="hl" src="original.document" />

和主页面中的 JS(承载框架):

$(hl.document.body).html($(hl.document.body).html().replace('Food', '<a name=\'entry2\'></a><span class=\'highlighted\'>Food</span>'))
hl.location = hl.location + '#entry2'
于 2009-12-14T12:05:00.280 回答
0

您可以检查 chrome 扩展中使用的 javascript,因为扩展只是常规的 Web 内容。

在 Vista 中,路径是: C:\Users\[YOUR_USER_NAME]\AppData\Local\Google\Chrome\User Data\Default\Extensions\okanipcmceoeemlbjnmnbdibhgpbllgc

在 XP 中,路径是: C:\Documents and Settings\[YOUR_USER_NAME]\Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions\okanipcmceoeemlbjnmnbdibhgpbllgc

okanipcmceoeemlbjnmnbdibhgpbllgc扩展程序的唯一 ID在哪里。

于 2009-12-20T21:38:27.167 回答