V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
maxmovie
V2EX  ›  奇思妙想

疯狂吐槽:把 Firefox 插件移植到 Chrome

  •  
  •   maxmovie · 2018-02-03 14:55:32 +08:00 · 3578 次点击
    这是一个创建于 2279 天前的主题,其中的信息可能已经有所发展或是发生改变。
    背景:搞了个开源的关于电影的 Firefox 插件( https://maxmovie.github.io/ ),终于把它移植到 Chrome 了……

    (下面进入“疯狂吐槽”时间)

    “谷歌的审核很奇怪”

    Firefox 插件发布到 Mozilla 官方网站,是提交作品,然后他们人工审核,一两个小时就搞定了。真是“没有比较就没有伤害”,谷歌的审核是“刷信用卡”。我晕,但是我网购很多啦,于是去刷卡,自己的卡被拒绝了——这卡肯定没问题的。好吧,倒腾到另外一张卡,这回没有被拒绝,但是显示“正在处理”——简单的“刷信用卡”,它“处理”了一天,第二天才报告成功了。

    “你们是故意不兼容吧”

    阅读 Chrome 官方的插件教程,感觉这东西和 Firefox 一模一样,于是我用 Chrome 加载 Firefox 版的插件——还真的加载成功了。但是不能正常运行。最后发现,在目标页面执行 JavaScript 代码,函数名字都是“ executeScript ”,调用参数也相似,但是用法不一样。于是……
    https://github.com/maxmovie/maxmovie/commit/7a43a12017fbb31e1e8be360c037126f5b3d7cee
    (自建了一个“ executeScript ”函数,判断是 Chrome 还是 Firefox,分别处理)

    “ Chrome 速度有点慢”

    Chrome 很著名的一个特点就是速度快。但是我发现一个坑爹的事实,能明显感觉 Firefox 运行插件更快。当然 Chrome 也是正常运行的,但是点击那个插件按钮,明显 Firefox 反应快些。完全相同的代码——也许是我电脑偏慢,这差距更显眼了。

    “有人不遵守标准”

    同样的 JavaScript,运行在同样的页面,结果却不一样。GB2312 编码的网页,用 JavaScript 打开 UTF-8 的新页面,页面地址含有中文—— Firefox 正常,Chrome 可能出现乱码。于是……
    https://github.com/maxmovie/maxmovie/commit/2fe1a0e6acb912bca4bab51c79648a5d4f8dbb15
    (全部加上“ encodeURIComponent ”)

    吐槽结束,新的开源小工具,欢迎 star —— https://github.com/maxmovie/maxmovie
    7 条回复    2018-02-08 12:03:25 +08:00
    qfdk
        1
    qfdk  
       2018-02-03 21:49:15 +08:00 via iPhone
    自从在一个 button 中的 span 注册 mouseover 事件不能正常搞定之后 我深深的鄙视了 Firefox 它从此不再是我的好盆友
    maxmovie
        2
    maxmovie  
    OP
       2018-02-03 22:49:06 +08:00
    @qfdk 我靠,不会吧——我自己 Chrome 和 Firefox 都用的很频繁,Firefox 似乎没有不正常的地方呀。
    wangcansun
        3
    wangcansun  
       2018-02-03 23:20:31 +08:00 via iPhone
    @maxmovie Button 内部 span 点击事件不行,尴尬。。。。。
    maxmovie
        4
    maxmovie  
    OP
       2018-02-04 11:14:16 +08:00
    @wangcansun 你说的这个 bug,我这边不能重现——清空 Chrome/Firefox 缓存,删除插件,重启浏览器,重新安装插件,测试……还是一切正常。你说的“ span ”应该是这里的“ span ”:

    https://github.com/maxmovie/maxmovie/blob/master/popup/choose.html

    也就是“加强版”这几个字,我这里可以点击呀。请告诉我详细信息(操作系统,浏览器,版本号),我再仔细研究。
    maxmovie
        5
    maxmovie  
    OP
       2018-02-04 18:21:27 +08:00
    @wangcansun 哦,应该是我理解错了,你说的应该是 Firefox 坑爹的地方。Max Movie 这个插件也有“ button ”,其中也有“ span ”——所以我开头理解成了“ Max Movie 有 bug ”。
    wangcansun
        6
    wangcansun  
       2018-02-04 19:49:17 +08:00 via iPhone
    @maxmovie 我说的不是你的插件,而是 firefox
    maxmovie
        7
    maxmovie  
    OP
       2018-02-08 12:03:25 +08:00
    @wangcansun 收到,多谢澄清。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2198 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 02:23 · PVG 10:23 · LAX 19:23 · JFK 22:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.