浏览 2550 次
锁定老帖子 主题:Maxthon插件开发
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-01-11
前言
我曾在这篇博文(http://www.iteye.com/topic/1117020)中说过要分享一下浏览器插件开发的。今天,趁现在有点时间,写一下吧,呵呵。 介绍 这个介绍不是介绍浏览器市场分布,也不是介绍浏览器插件辉煌,而是说明一下浏览器插件的开发前的准备。 首先,这里为什么只说Maxthon插件开发呢?因为我当时就是用Maxthon写的插件。答案是不是出奇的简单? 其次,插件的开发其实原理上都是差不多的,学会一个可以举一反三很快就会掌握很多浏览器插件的开发。毕竟插件开发也不是什么难事,就是HTML和JS的有机组合! 好了,话不多说,进入开发…… 开发 哦,对了,在此之前有三点要跟大家说明一下: 1、目前只有Maxthon2.x才支持插件模式(不好意思,说一下,Maxthon3.x也可以支持插件开发了,参考:http://bbs.maxthon.cn/viewthread.php?tid=610087); 2、Maxthon插件开发也是有官方文档的,但其维护却很……烂!烂到无以复加!烂到你以为那不是官方文档!好吧,它的地址是:http://bbs.maxthon.cn/viewthread.php?tid=23564 大家同时也可以参考一下这个文档:http://hi.baidu.com/xkplt/blog/item/4cf206f7f7cb5f2a730eec17.html 3、最好的学习方式是下载一个人家比较好的插件下来,看源码时再看文档,这样学习效率事半功倍哦。插件下载地址:http://addons.maxthon.cn/ 最近铁道部售票网站买票难已经被大家说得不能再说了~作为程序员,我当时就想到两个方法来实现自动购票:可以写一个类似的网络爬虫的程序来实现自动票请求;也可以写浏览器插件来实现该过程(个人觉得浏览器插件实现起来应该会更简单、优雅一些)!我本人因为离家近,不需要买票,所以没有动力去及时实现,结果网上这两种方式都有了! 好了,废话又讲了一堆,我们开始开发插件吧: 配置开发 首先,既然是插件,就必须有遵循的加载标志,Maxthon中就是一个plugin.ini文件。所以,我先建立一个文件夹(名称最好就是插件名称),在文件夹里面建立一个plugin.ini文件,里面的内容大致如下: [General] Name=工作小助手 Author=hellohank Version=1.0 ModuleType=SCRIPT FileName=saveCustomer.htm Comments=帮助我家老婆工作的一些小工具\n Type=M2Plugin_BUTTON HotIcon=icon.ico Icon=icon.ico [MyIE2Buttons] Count=1 Name1=保存客户信息 FileName1=saveCustomer.htm Count=2 Name1=完善客户信息 FileName1=perfectCustomer.htm 从上面的配置来看,我们定义了插件的显示名称、插件类型(这里是SCRIPT类型)、启动文件、插件图标等,最后,我们这里还建立了两个按钮,分别做两件不同的事! 那接下来让我们看一下htm文件中的内容做了什么事(注意这是SCRIPT类型的插件,所以它的htm文件中最好不要有html标签): <script language="javascript"> //加载jquery var jqueryJs=document.createElement('script'); jqueryJs.src='file:///'+(external.m2_plugin_folder(%max_security_id,PlugName))+'jquery142.js'; document.body.insertAdjacentElement('afterBegin',jqueryJs); // // saveCustomer(); function saveCustomer() { readFiles(); } function readFiles() { try { var fso = new ActiveXObject("Scripting.FileSystemObject") } catch (e) { alert("您的浏览器安全级别太高,无法保存,请调整您的安全级别到低"+e); return; } var ts, s; var ForReading = 1; // 定义数组 var clientsDate = new Array(); // 读取文件的内容。 ts = fso.OpenTextFile("d:\\test.txt", ForReading, true); while (!ts.AtEndOfStream) { s = ts.ReadLine(); clientsDate.push(s); } ts.Close(); // 迭代弹出读取文件的数据 for ( var i = 0; i < clientsDate.length; i++) { alert(clientsDate[1]); } } </script> 注意一下上面的代码,你会发现,它和我们平时写的HTML一模一样!因为它其实就是HTML开发方式!还有,你也可以看到我在这里引用了jquery!这一点还是很重要的,因为我们很多时候是需要借助第三方的js或什么的来简洁地处理自己的事情! 打包安装 当所有的文件都写完了,就可以打包并安装调试了! 呃……好吧,我们先来说说调试吧:其实Maxthon没有调试功能(至少我开发时还没有)!但我们也可以试用啊~ 找到你的Maxthon安装路径,在里面有一个Plugin文件夹,将你建的插件文件夹直接复制到该文件夹下,然后重启Maxthon即可(刷新一下页面也行,但有时候会出现加载不完全的现象,所以还是建议重启),然后你就会在相应的地方看到你的插件了,然后你就可以调用它了! 当你调试完之后,想分享给别人使用,该怎么办呢?有两个办法: 1、将你建的那个插件文件夹直接发给人家,让人家放在那个目录下即可!如果你遇到对电脑什么都不懂的小白的话(一般来说女生居多)……你要解释半天该怎么放了~ 2、将这个插件文件夹打包成插件发给对方,让对方直接把插件拖到Maxthon上就可以直接安装! 打包为插件的步骤为: a)、将插件文件夹压缩为zip文件; b)、将该zip文件的后缀更改为.m2p即可;这个m2p文件就是插件文件,可以直接拖到浏览器上安装! 经验积累
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-01-11
Maxthon已无前途
|
|
返回顶楼 | |
发表时间:2012-01-11
anubiskong 写道 Maxthon已无前途
顶楼上~~我已经开始慢慢边缘化Maxthon了~~嘿嘿~ |
|
返回顶楼 | |