當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript mousetrap.bind函數代碼示例

本文整理匯總了TypeScript中mousetrap.bind函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript bind函數的具體用法?TypeScript bind怎麽用?TypeScript bind使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了bind函數的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1:

export const bindKeys = (bindings: KeyBinding[]) => {
  for (const binding of bindings) {
    if (!binding.key.includes('digit')) {
      Mousetrap.bind(binding.key, commands[binding.command]);
    } else {
      for (let i = 0; i <= 9; i++) {
        Mousetrap.bind(
          binding.key.replace('digit', i),
          commands[binding.command],
        );
      }
    }
  }
};
開發者ID:laquereric,項目名稱:wexond,代碼行數:14,代碼來源:key-bindings.ts

示例2: BindShortcuts

export default function BindShortcuts({ onNewEndpoint, onSave, onDeploy }) {
  Mousetrap.bind(["command+n", "ctrl+n"], function() {
    onNewEndpoint();
    return false;
  });

  Mousetrap.bind(["command+s", "ctrl+s"], function() {
    onSave();
    return false;
  });

  Mousetrap.bind(["command+d", "ctrl+d"], function() {
    onDeploy();
    return false;
  });
}
開發者ID:Raathigesh,項目名稱:Atmo,代碼行數:16,代碼來源:Shortcuts.ts

示例3: Promise

 return new Promise((resolve, reject) => {
   mousetrap.bind(keySequence, (event, sequence) => {
     resolve(new Input(InputType.Keyboard, sequence));
     mousetrap.unbind(keySequence);
     return false; // prevent the default behavior
   });
 });
開發者ID:j-party,項目名稱:game,代碼行數:7,代碼來源:keyboard-service.ts

示例4: sendMessage

document.addEventListener('DOMContentLoaded', (event) => {
    const isSafari = (typeof safari !== 'undefined') && navigator.userAgent.indexOf(' Safari/') !== -1 &&
        navigator.userAgent.indexOf('Chrome') === -1;
    const isEdge = !isSafari && navigator.userAgent.indexOf(' Edge/') !== -1;
    const isVivaldi = !isSafari && navigator.userAgent.indexOf(' Vivaldi/') !== -1;

    if (!isSafari && !isEdge && !isVivaldi) {
        return;
    }

    if (isSafari && (window as any).__bitwardenFrameId == null) {
        (window as any).__bitwardenFrameId = Math.floor(Math.random() * Math.floor(99999999));
    }

    Mousetrap.prototype.stopCallback = () => {
        return false;
    };

    const autofillCommand = isSafari || isEdge ? 'mod+\\' : 'mod+shift+l';
    Mousetrap.bind(autofillCommand, () => {
        sendMessage('autofill_login');
    });

    if (isSafari) {
        Mousetrap.bind('mod+shift+y', () => {
            sendMessage('open_popup');
        });
    } else if (!isEdge) {
        Mousetrap.bind('mod+shift+9', () => {
            sendMessage('generate_password');
        });
    }

    function sendMessage(shortcut: string) {
        const msg: any = {
            command: 'keyboardShortcutTriggered',
            shortcut: shortcut,
        };

        if (isSafari) {
            msg.bitwardenFrameId = (window as any).__bitwardenFrameId;
            safari.self.tab.dispatchMessage('bitwarden', msg);
        } else {
            chrome.runtime.sendMessage(msg);
        }
    }
});
開發者ID:bitwarden,項目名稱:browser,代碼行數:47,代碼來源:shortcuts.ts

示例5: bind

 bind(keyArg, fn) {
   Mousetrap.bind(keyArg, evt => {
     evt.preventDefault();
     evt.stopPropagation();
     evt.returnValue = false;
     return this.$rootScope.$apply(fn.bind(this));
   });
 }
開發者ID:navedalam,項目名稱:grafana,代碼行數:8,代碼來源:keybindingSrv.ts

示例6: enter

function enter() {
    Mousetrap.bind('enter', (e) => {
        const href = $('.song-list-el-focus a').attr('href') as string
        const win = window.open(href, '_blank')
        win.focus()
        e.preventDefault()
    })
}
開發者ID:musicope,項目名稱:game,代碼行數:8,代碼來源:keyboard.ts

示例7: values

 values(instumentShortcuts.get()).forEach(shortcut => {
     if (shortcut.keybinding) {
         Mousetrap.bind(shortcut.keybinding, () => {
             executeShortcut(shortcut);
             return false;
         });
     }
 });
開發者ID:eez-open,項目名稱:studio,代碼行數:8,代碼來源:mousetrap.ts

示例8: subscribeActions

 private subscribeActions() {
     const o = this
     for (const key in actions) {
         Mousetrap.bind(key, function (action: any) {
             action.triggerAction(o.song)
             display(action.title, action.getCurrentState())
         }.bind(this, actions[key]))
     }
 }
開發者ID:musicope,項目名稱:game,代碼行數:9,代碼來源:keyboard.ts

示例9:

 commands.forEach(command => {
   const commandSetting = _.find(
     newSettings.Commands,
     c => c.Name == command.Id
   );
   if (commandSetting) {
     command.KeyBinding = commandSetting.KeyBinding;
     command.ShowOnActionBar(commandSetting.ShowOnActionBar);
   }
   Mousetrap.bind(command.KeyBinding, command.ActionBinding);
 });
開發者ID:zipzav,項目名稱:improved-initiative,代碼行數:11,代碼來源:Settings.ts

示例10: end

function end() {
    Mousetrap.bind('end', (e) => {
        const list = $('.song-list')
        const newEl = list.find('li:visible').last()
        if (newEl.length > 0) {
            list.find('.song-list-el-focus').removeClass('song-list-el-focus')
            newEl.addClass('song-list-el-focus')
            correctPosition()
        }
        e.preventDefault()
    })
}
開發者ID:musicope,項目名稱:game,代碼行數:12,代碼來源:keyboard.ts


注:本文中的mousetrap.bind函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。