fanta
火狐狸
火狐狸
  • UID30401
  • 注册日期2009-09-17
  • 最后登录2024-04-25
  • 发帖数236
  • 经验164枚
  • 威望0点
  • 贡献值114点
  • 好评度5点
  • 社区居民
  • 忠实会员
阅读:1849回复:4

这个半自动填表脚本 有问题了,,谁能帮忙改改或者有能用的

楼主#
更多 发布于:2013-08-15 13:41
以前不知道哪里下载的自动填表脚本,就是在对话框上点击右键,,里面多个informEnter菜单,,点击下面的子菜单就会将预设好的内容输入到对话框里面,,,一般我也不太用,,,今天用了下,,要重复操作好多次才能成功一次,,不知道这个代码有什么问题,,,我用的firefox10.0
我半夜又测试了下,,现在成功率很高,,,我想与我关机重启有关,,但不是每次点击都能成功,,代码还是有问题的
// ==UserScript==
// @name           InFormEnter Lite 自动填表
// @include        chrome://browser/content/browser.xul
// ==/UserScript==
(function(){
  var mMenus = [
	{ label: "fanta",text: "fanta",},
    { label: "sep",},
    { label: "123456@qq.com", text: "123456@qq.com", accesskey: "a",},
    { label: "a", text: "111111111111111111",},
    { label: "b", text: "2222222222222222222", accesskey: "s",}
  ];

  init: {
    var contextMenu = document.getElementById("contentAreaContextMenu");
    var separator = document.getElementById("context-sep-undo");
    
    var menu = document.createElement("menu");
    menu.id = "ife-context-menu";
    menu.setAttribute("label", "InFormEnter");
    menu.setAttribute("accesskey", "I");

    contextMenu.insertBefore(menu, separator);
    var menuPopup = document.createElement("menupopup");
    menu.appendChild(menuPopup);
    
    for(var i = 0, menu; menu = mMenus[i]; i++){
      var menuItem;
      if(menu.label == "sep"){
        menuItem = document.createElement("menuseparator");
      }else{
        menuItem = document.createElement("menuitem");
        menuItem.setAttribute("label", menu.label);
        if("accesskey" in menu) menuItem.setAttribute("accesskey", menu.accesskey);
        menuItem.culMenu = menu;
        menuItem.addEventListener("command", pasteText, false);
      }
      menuItem.id = "ife-context-menu-" + i;
      menuPopup.appendChild(menuItem);
    }
    contextMenu.addEventListener("popupshowing", setMenuDisplay, false);
  }

  function pasteText(aEvent){
    var text = aEvent.target.culMenu.text;
    if (text!="undefined"){
//      goDoCommand('cmd_selectAll');
//      goDoCommand('cmd_delete');
      Cc["@mozilla.org/widget/clipboardhelper;1"]
        .getService(Ci.nsIClipboardHelper).copyString(text);
      goDoCommand("cmd_paste");
    }
  }

  function setMenuDisplay(){
    if (gContextMenu != null && gContextMenu.onTextInput){
      document.getElementById("ife-context-menu").hidden = false;
        for (var i = 0, menu; menu = mMenus[i]; i++)
          document.getElementById("ife-context-menu-" + i).hidden = false;
    }else{
      document.getElementById("ife-context-menu").hidden = true;
    }
  }
})();
hzzhaiqi
火狐狸
火狐狸
  • UID30112
  • 注册日期2009-08-18
  • 最后登录2015-09-15
  • 发帖数279
  • 经验180枚
  • 威望1点
  • 贡献值44点
  • 好评度28点
1楼#
发布于:2013-08-15 13:41
我穿越了吗? init 这么奇怪的写法,这能运行?不会报错?
(function() {
    var mMenus = [
    ];

    init: {
    }

})();
fanta
火狐狸
火狐狸
  • UID30401
  • 注册日期2009-09-17
  • 最后登录2024-04-25
  • 发帖数236
  • 经验164枚
  • 威望0点
  • 贡献值114点
  • 好评度5点
  • 社区居民
  • 忠实会员
2楼#
发布于:2013-08-15 13:41
现在可以95%正常使用,偶尔点击操作没有反应,,
我反复测试了很多次,,有时候 这个脚本会突然 "失效",,
失效的时候,,,反复重复点击操作,,有1/10左右的成功率...........
dupontjoy
小狐狸
小狐狸
  • UID39418
  • 注册日期2013-04-23
  • 最后登录2020-05-06
  • 发帖数62
  • 经验73枚
  • 威望1点
  • 贡献值40点
  • 好评度19点
  • 社区居民
  • 忠实会员
3楼#
发布于:2013-10-31 08:04
plus版不错的,正在用
macos15
小狐狸
小狐狸
  • UID24483
  • 注册日期2008-06-07
  • 最后登录2020-12-22
  • 发帖数17
  • 经验35枚
  • 威望0点
  • 贡献值38点
  • 好评度1点
4楼#
发布于:2013-11-25 11:32
plus版 怎么用?
游客

返回顶部