以具体应用实例加以说明。

目标:在youtube页面上观看视频,发现喜欢的视频,单击按钮就可以下载视频。

但是,youtube页面并未提供这样的按钮及其功能。

 

实现思路:在浏览器下载youtube页面后,我们自己添加一个按钮到页面上,编写一段视频下载处理程序(js程序),点击按钮,就可以视频下载。

 

实现方法:

浏览器的行为

无油猴:下载网页 => 显示,无法下载视频。

有油猴:下载网页 => 网址和网页发送给油猴扩展程序 => 油猴获取网址,搜索与该网址对应的js处理程序 => 油猴发送网页内容给js处理程序 => js处理程序在网页上插入视频下载按钮和相应的视频下载处理程序 => 增加了视频下载功能的网页再由浏览器显示出来。

最终呈现给用户的是具有视频下载功能的页面。

 

结论:

油猴的功能就是维护一张映射表:把网址映射到相应的js处理程序。若发现网址存在相应的js处理程序,就调用之。