用js丰富你的书签功能

授权方式:署名,非商业用途,保持一致,转载时请务必以超链接(http://www.fwolf.com/blog/post/203)的形式标明文章原始出处和作者信息及本声明。

美味书签furlcocomment等服务,都具备利用书签按钮“一键提交”的功能,其实一点儿也不复杂,只要你掌握了在收藏夹中使用的方法,就可以为你的书签工具栏增色不少。

本文主要测试于firefox浏览器下,ie浏览器应该同理可用。

首先要发挥在书签中的最大作用,你要知道如何让你的firefox工具栏显示出来,并且在书签项目上点击右键可以修改他们的内容。

在下面的例子中,所有的代码都需要填写在书签项目的Location栏中,并且为了浏览方便,部分内容我进行了分行,而在填到书签项目中的时候一定要合并成一行才行。

先来一个最简单的例子,只包含一个函数:

javascript:alert(document.lastModified);

点击这个书签项目,将会弹出一个提示框,显示当前网页的生成时间。

如果要修改页面上的内容,然后提交,javascript就要复杂一些了:

javascript:
(
  ()
    {
      document.Form1.id.value=’001′;
      document.Form1.name.value=’fwolf’;
      document.Form1.Submit();
    }
)
();

基本原理是:()是定义了一个函数,它外面加了一对儿()是对这个“无名”函数的引用,后面那对()是引用函数时的参数(没有参数)。上面的代码执行效果就是向网页中指定表单填写内容,然后自动提交。

如果要修改网页上的内容,但是不作提交等动作,仍然显示当前网页,上面那个例子中的方法就不管用了,需要再作一些调整:

javascript:
void(
  (
    ()
    {
      p=document.getElementById(’LOGPASS’);
      p.readOnly=0;
    }
  )
  ()
);

就是把上面那个例子中的内容用void()再包含了一遍,也就是整体作为一个不返回内容的函数体来执行了,如果不这样,直接使用上面那个例子的方式来作这些的话,网页内容会显示()的返回值。如果把void直接加到上或者他外层的()上道理上应该也可行,但我没有测试。

怎么样,想到什么好的鬼点子没有?上面的最后一个例子就是我在使用建设银行个人网银的时候鼓捣出来的,他的登录页面默认是不让手工输入密码的,而是通过一个的软键盘,而软键盘的代码在ff下无法正确执行。现在通过这种方式,我能够成功在ff中登录建行个人网银了,只可惜他内部的功能页面对依赖很强,并且同样在ff下无法正确执行,所以最终还是要在ie下才能够正常使用。但相比之下,比其他的个人网银要借助activex才能输入密码的方式兼容性已经好很多了。

参考:

update @ 2006-11-28

如果使用这种方法,又同时使用Google Browser Sync来同步书签,记得一定要把location更改为一行(ubuntu下location其实是可以输入多行内容的,粘贴过来即可,并且还能够用上下键选择行进行编辑),不然Google Browser Sync在同步的时候,这项书签会丢失的。

Tags: , ,

Related posts

2 Responses to “用js丰富你的书签功能”

  1. Fwolf’s Blog » Blog Archive » 自己写js代替手工点击 Says:

    [...] 有一些变态网页,会有一大堆radio或者checkbox让用户去点,或者有很多+要逐个展开,如果经常使用这样的功能,手工一个个的去点是很笨的做法,如果结合我原来介绍过的用js丰富你的书签功能,自己写点javascript就方便多啦。 [...]

  2. CSS裸奔节之强制脱衣 | 偶爱偶家 Says:

    [...] 不过今天偶不打算裸奔,而是告诉大家一个可以看到任何网站裸奔形象的方法,参考我以前写的用js丰富你的书签功能,创建一个书签,也可以放到书签工具栏上,内容如下: [...]

Leave a Reply

您的留言将被缓存和审阅,所以不会立即出现在这里,请别着急,着急的话可以给我发邮件 :-)
支持Markdown Extra语法,参见: [甲] [1] [2]