mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update components
This commit is contained in:
parent
d3a9a9b49e
commit
bcfbb01b4b
45 changed files with 405 additions and 390 deletions
|
@ -1,20 +1,61 @@
|
|||
(function (globalScope) {
|
||||
define([], function () {
|
||||
|
||||
globalScope.Events = {
|
||||
function getCallbacks(obj, name) {
|
||||
|
||||
on: function (obj, eventName, selector, fn) {
|
||||
ensureCallbacks(obj, name);
|
||||
|
||||
jQuery(obj).on(eventName, selector, fn);
|
||||
return obj._callbacks[name];
|
||||
}
|
||||
|
||||
function ensureCallbacks(obj, name) {
|
||||
|
||||
if (!obj) {
|
||||
throw new Error("obj cannot be null!");
|
||||
}
|
||||
|
||||
obj._callbacks = obj._callbacks || {};
|
||||
|
||||
if (!obj._callbacks[name]) {
|
||||
obj._callbacks[name] = [];
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
on: function (obj, eventName, fn) {
|
||||
|
||||
var list = getCallbacks(obj, eventName);
|
||||
|
||||
if (list.indexOf(fn) == -1) {
|
||||
list.push(fn);
|
||||
}
|
||||
},
|
||||
|
||||
off: function (obj, eventName, selector, fn) {
|
||||
off: function (obj, eventName, fn) {
|
||||
|
||||
jQuery(obj).off(eventName, selector, fn);
|
||||
var list = getCallbacks(obj, eventName);
|
||||
obj._callbacks[name] = list.filter(function (i) {
|
||||
return i != fn;
|
||||
});
|
||||
},
|
||||
|
||||
trigger: function (obj, eventName, params) {
|
||||
jQuery(obj).trigger(eventName, params);
|
||||
trigger: function (obj, eventName) {
|
||||
|
||||
var eventObject = {
|
||||
type: eventName
|
||||
};
|
||||
|
||||
var eventArgs = [];
|
||||
eventArgs.push(eventObject);
|
||||
|
||||
var additionalArgs = arguments[2] || [];
|
||||
for (var i = 0, length = additionalArgs.length; i < length; i++) {
|
||||
eventArgs.push(additionalArgs[i]);
|
||||
}
|
||||
|
||||
getCallbacks(obj, eventName).forEach(function (c) {
|
||||
c.apply(obj, eventArgs);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
})(window);
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue