Произошла ошибка.
Пожалуйста, обновите страницу.
Fly.js > Документация > События > $(...).emit()

$(...).emit()

Имитирует события с заданными параметрами для каждого узла текущей FlyNode.

#События

$(...).emit(name, [extra], [data])

                    FlyDomNode: {
                        __constructor: function(context) {
                            var array = fnNodeList.makeDomNodeArray(context);
                            for (var a = 0, al = array.length; a < al; a++) {
                                this[a] = array[a];
                            }
                            this.length = al;
                        },

                        size: function() {
                            return this.length;
                        },

                        get: function(index) {
                            return $.isNumber(index) ? this[index] : [].slice.call(this);
                        },

                        addNode: function(flyNode) {
                            return fnNodeList.changeNodeContext(this, flyNode, function(child, context) {
                                context.indexOf(child) === -1 && context.push(child);
                            });
                        },

                        removeNode: function(flyNode) {
                            return fnNodeList.changeNodeContext(this, flyNode, function(child, context) {
                                var position = context.indexOf(child);
                                if (position !== -1) context.splice(position, 1);
                            });
                        },

                        eq: function(index) {
                            if (index < 0) index = index + this.length;
                            return new this.__self(this[index]);
                        },

                        lt: function(index) {
                            return new this.__self(this.slice(0, index));
                        },

                        gt: function(index) {
                            return new this.__self(this.slice(index));
                        },

                        last: function(selector) {
                            var element = this[this.length - 1];
                            return new this.__self(fnStyle.isMatch(element, selector) ? element : []);
                        },

                        first: function(selector) {
                            var element = this[0];
                            return new this.__self(fnStyle.isMatch(element, selector) ? element : []);
                        },

                        normalize: function() {
                            return fnNodeList.transformNodeContext(this, function(item, context) {
                                if ($.isNode(item)) context.push(item);
                            });
                        },

                        each: function(callback, context) {
                            $.each(this, callback, context);
                            return this;
                        },

                        name: function() {
                            return this[0].tagName.toLowerCase() || null;
                        }
                    }
                

$(...).emit(name, [extra], [data])
Возвращает: FlyNode [$]

Имитирует события с заданными параметрами для каждого узла текущей FlyNode.

name: String ABC

Названия генерируемых событий.

extra: Array []

Дополнительные параметры для обработчика.

data: Object {}

Расширение встроенного в обработчик объекта data.

Аргумент name является строкой с названиями событий, которые нужно сгенерировать. Эти названия должны быть разделены пробелом. При использовании пространств имён разделителем является точка .. Например, параметр name может иметь следующий вид: click.my.name.space mouseenter.namespace mouseover.

Аргумент extra обязательно должен быть массивом. Его элементы будут переданы в обработчик события как дополнительные аргументы. Например, чтобы передать параметры extra1 и extra2 в обработчик function(event, extra1, extra2) { ... }, нужно вызвать $(...).emit() с параметром extra равным [value1, value2].

Аргумент data просто расширяет встроенный в обработчик одноимённый объект.

Пример: Имитация события клика на DOM узле.

<!DOCTYPE html>
    <head>
        <meta charset="utf-8"/>
        <title>Fly.js - $(...).emit()</title>

        <script src="/scripts/fly.js"></script>
    </head>
    <body>
        <button>Emit event!</button>
        <div style="height:50px; width:200px; background:red"></div>
        <b></b>

        <script>
            var data = {
                    hello: 'hello',
                    world: ' world!'
                };

            $('div').on('click', data, function(e, extra1, extra2) {
                $('b').html([
                    e.data.hello, e.data.world,
                    extra1, extra2
                ].join(' '));
            });

            $('button').on('click', function() {
                $('div').emit('click', ['one', 'two'], {world: ' %username%!'});
            });
        </script>
    </body>
</html>