hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
阅读:2241回复:5

[求助已解决]如何把 BaiduMonkey 的部分功能代码抽出来

楼主#
更多 发布于:2009-04-10 17:06
问题已解决,非常感谢 meidog 的热心帮助!

本来想发布用于有道、百度和Google的三个 GM 脚本,由于百度的脚本用到了 BaiduMonkey 10.5 中把搜索结果放到一个 id 为 “res” 的 div 容器中的功能,所以想引用;结果发现新版 BaiduMonkey 10.7 把容器的 id 改成 “bm_page_*”,其中星号是页码,结果我就不会用了……

我希望能把 BaiduMonkey 10.5 中那个 “res” div 容器的功能单独取出来,放到我自己的脚本里面去(毕竟我用不到 BaiduMonkey 里面其他功能),但是自己弄失败了,想请求JS高手帮助。

附件1是我自己的脚本,其实没什么技术含量,只是用 Platypus 生成的,但胜在简单方便;附件2是 BaiduMonkey 10.5 的脚本。

有什么建议或者帮助我都感激不尽!
附件名称/大小 下载次数 最后更新
platypus-baidu_more.user.js.zip (3KB)  85 2009-04-10 17:06
baidumonkey.user.js.zip (8KB)  106 2009-04-10 17:06
meidog
火狐狸
火狐狸
  • UID26768
  • 注册日期2008-10-23
  • 最后登录2012-02-12
  • 发帖数126
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
1楼#
发布于:2009-04-10 17:06
lz能不能不需要怎样的功能说清楚。。。
hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
2楼#
发布于:2009-04-10 17:06
meidog:lz能不能不需要怎样的功能说清楚。。。回到原帖

你的意思是我要说清楚“我不需要哪些功能”,是吗?
如果是的话我的回答是“全部”。

其实我只想有一个用JS定位那条蓝色条的方法,好让我插入那跳转搜索引擎的HTML代码。我不会JS,所以我只能在 BaiduMonkey 的基础上,利用div容器插入代码而已。

BaiduMonkey 本身有跳转到 Google 的功能,但我不喜欢其位置同时我也想加上有道和第三个候选搜索引擎,所以我才改出来这样一个东西。

我的问题也可以简化成定位那蓝条然后插入我自己的HTML代码。
meidog
火狐狸
火狐狸
  • UID26768
  • 注册日期2008-10-23
  • 最后登录2012-02-12
  • 发帖数126
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
3楼#
发布于:2009-04-10 17:06
光是插入,其他功能不要的话应该很简单那吧。这样?

var keyword=document.getElementById("kw").value;
var thistable=document.body.getElementsByTagName("table")[3];
var divElement=document.createElement("div");
divElement.innerHTML='跳到→ <a target="nw" href="http://www.youdao.com/search?q=' + encodeURI(keyword) +'&amp;ue=utf8">【有道】</a>, <a target="nw" href="http://www.google.com/search?q=' + encodeURI(keyword) +'&ie=utf-8&oe=utf-8">【Google】</a>, <a target="nw" href="http://www.ask.com/web?q=' + encodeURI(keyword) +'">【Ask】</a>&nbsp;&nbsp;&nbsp;&nbsp;'
thistable.parentNode.insertBefore(divElement, thistable);
hzhbest
千年狐狸
千年狐狸
  • UID22640
  • 注册日期2008-01-15
  • 最后登录2017-04-06
  • 发帖数1763
  • 经验476枚
  • 威望3点
  • 贡献值414点
  • 好评度89点
  • 社区居民
  • 忠实会员
4楼#
发布于:2009-04-10 17:06
高手啊!非常感谢,就是要这样的效果。

不过能不能为那个插入的div加一个id或者class呢?
当然在里面再套一层div可以做到,但就想问问能不能一层搞定罢了。即使不能也没所谓。
总之多谢了!
meidog
火狐狸
火狐狸
  • UID26768
  • 注册日期2008-10-23
  • 最后登录2012-02-12
  • 发帖数126
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
5楼#
发布于:2009-04-10 17:06
可以自己加上的啦。
加入下面的语句就行了
divElement.id="xxxxx"
divElement.className="xxxxx"
游客

返回顶部