能不能让火狐在浏览某些网页时运行一段js代码

如题所述

按以下的操作方法可以实现:

alert(12138);//这一个可以弹出

GM_xmlhttpRequest({

method: 'GET',

url: 'http://greaseblog.blogspot.com/atom.xml',

headers: {

'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey/0.3',

'Accept': 'application/atom+xml,application/xml,text/xml',

},

onload: function(responseDetails) {

alert(title);//这一个不可以弹出

},

onreadystatechange:function(responseDetails) {

alert(222);//这一个不可以弹出

}

});

alert("123");//这一个不可以弹出

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-06-02
  基本思路是,通过开发火狐插件实现:

  firefox的插件分两种类型,一种extension,叫扩展,一种是plugin,我们叫插件.两种是完全不同的两个东西。extension相对来说简单很多,用的主要是XUL,只是xml的一个变相。而plugin相对来说复杂一些。具体的官网说明如下https://developer.mozilla.org/en/Gecko_Plugin_API_Reference
  一、 插件的标准
  1、在windows平台,火狐的插件是以动态库形式(dll)存在的,并只去识别在其安装目录下plugins文件夹下的dll;
  2、dll的名是以8.3原则来命名的,即其名字所包含的字符不超过8个字符且以dll结尾的文件,还有一个规定就是其名字必须以np开头,例如:npXXX.dll,而XXX不超过六个字符;
  3、dll是属于MIME(一种标准)类型,要不火狐浏览器不认识他;
  4、dll导出的函数必须是NP_GetEntryPoints、NP_Initialize、NP_Shutdown是这三个,这是火狐浏览器能够识别的在个接口,具体说明在插件的生命周期中说明。
  二、 插件的生命周期
  1、 第一次打开含量有插件的页面时,浏览器最先调用NP_GetEntryPoints作为调用插件的入口,此方法也只在第一次加载插件时调用。
  2、 调用NP_GetEntryPoints后,浏览器会调用NP_Initialize初始化插件,NP_Initialize只在第一次调用时被浏览器调用,与NP_Initialize配对的是NP_Shutdown,NP_Shutdown是在关闭了所有含有该插件的页面后被浏览器调用,在生命周期内也只被调用一次
  3、 调用NP_Initialize后,浏览器会调会NPP_New来创建一个插件实例,每打开一个页面都会调用NPP_New一次来创建一个插件实例,与NPP_New配对的是NPP_Destory,在每关闭一个页面都会调用NPP_Destory来释放NPP_New创建的实例
  4、 调用NP_Initialize后,一般会调用NPP_SetWindow来调置窗口,对于没有窗口的插件当然不用调用。
  注:火狐插件开发的sdk划分为两类接口,一类是与插件相关的,以NPP或者NP开头的;一类是与浏览器相关的,以NPN开头的。
  三、 页面调用插件的方式
  1、 通过object方式调用:与IE调用ActiveX控件的方式一样的,不同的是IE调用ActiveX控件是通过ClassID来标识的,而火狐的控件是通过MIME的值来标识。
  2、 通过embed方式调用:与object方式类似,但操作方面简单一些
  四、 插件与页面的信息传递
  插件与页面的信息是通过插件的接口与JS进行信息传递。在火狐插件有一类接口可以直接读取页面的JS函数,并从函数中获取相应的值或者调置相关的值。
  参考:
  http://blog.csdn.net/zhaozheng7758/article/details/6307839
  https://developer.mozilla.org/zh-CN/docs/Mozilla/add-ons?menu
第2个回答  2016-05-30
能. firefox有GreaseMonkey这个扩展可以使得在浏览某些指定的页面时运行特定脚本, 而且即使自己不会写也有很多现成的对应不同网站不同功能的脚本能下载本回答被网友采纳
第3个回答  2016-06-11
这个不可以的,基于安全考虑
第4个回答  2016-06-29
可以,做一个火狐插件就行