forked from 0x2620/oxjs
add Ox.Message for message passing between frame and parent
This commit is contained in:
parent
916a175849
commit
47efc7377a
3 changed files with 107 additions and 0 deletions
|
|
@ -89,6 +89,36 @@ Ox.Element = function(options, self) {
|
|||
.addClass('OxElement')
|
||||
.on({mousedown: mousedown});
|
||||
|
||||
if (self.options.element == '<iframe>') {
|
||||
that.on('load', function() {
|
||||
Ox.Message.post(that, 'init', {id: that.oxid});
|
||||
});
|
||||
that.onMessage = function(callback) {
|
||||
var callback;
|
||||
if (Ox.isObject(arguments[0])) {
|
||||
Ox.forEach(function(callback, event) {
|
||||
Ox.Message.bind(arguments[0], function(evt, data, oxid) {
|
||||
if (that.oxid ==oxid && event == evt) {
|
||||
callback(data);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else {
|
||||
callback = arguments[0];
|
||||
Ox.Message.bind(function(event, data, oxid) {
|
||||
if (that.oxid == oxid) {
|
||||
callback(event, data);
|
||||
}
|
||||
});
|
||||
}
|
||||
return that;
|
||||
};
|
||||
that.postMessage = function(event, data) {
|
||||
Ox.Message.post(that, event, data);
|
||||
return that;
|
||||
};
|
||||
|
||||
}
|
||||
setTooltip();
|
||||
|
||||
function mousedown(e) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue