Загружать функцию Javascript при наборе чего-то определенного до пробела - PullRequest
0 голосов
/ 15 января 2012

Например: когда кто-то набирает @, он готовит функцию.

В Twitter, например, показывает что-то, когда кто-то печатает @USERNAME, после пробела они ничего не показывают.

Ответы [ 2 ]

1 голос
/ 15 января 2012

Вот пример JavaScript:

document.getElementById('test').onkeyup = function(oEvent) {
    if (typeof oEvent == 'undefined') oEvent = window.event;          // IE<9 fix
    if (oEvent.keyCode != 32) return;       // stop if character is not the space
    if (/@USERNAME /.test(this.value)) {      // check if @-template is available
        this.value = this.value.replace(/@USERNAME /g, 'Dirk ');    // replace it
    }
}

Также см. этот jsfiddle .

=== ОБНОВЛЕНИЕ ===

Вот альтернатива jQuery:

$('#test').keyup(function(oEvent) {                  // set (keyup) event handler
    if (oEvent.keyCode != 32) return;       // stop if character is not the space
    if (/@USERNAME /.test($(this).val())) {   // check if @-template is available
        $(this).val($(this).val().replace(/@USERNAME /g, 'Dirk ')); // replace it
    }
});

Также см. этот jsfiddle .

0 голосов
/ 15 января 2012

Возможно, вы можете попробовать событие onkeypress при нажатии пробела.

...