init
This commit is contained in:
83
public/tinymce/classes/ui/Iframe.js
Normal file
83
public/tinymce/classes/ui/Iframe.js
Normal file
@ -0,0 +1,83 @@
|
||||
/**
|
||||
* Iframe.js
|
||||
*
|
||||
* Copyright, Moxiecode Systems AB
|
||||
* Released under LGPL License.
|
||||
*
|
||||
* License: http://www.tinymce.com/license
|
||||
* Contributing: http://www.tinymce.com/contributing
|
||||
*/
|
||||
|
||||
/*jshint scripturl:true */
|
||||
|
||||
/**
|
||||
* This class creates an iframe.
|
||||
*
|
||||
* @setting {String} url Url to open in the iframe.
|
||||
*
|
||||
* @-x-less Iframe.less
|
||||
* @class tinymce.ui.Iframe
|
||||
* @extends tinymce.ui.Widget
|
||||
*/
|
||||
define("tinymce/ui/Iframe", [
|
||||
"tinymce/ui/Widget"
|
||||
], function(Widget) {
|
||||
"use strict";
|
||||
|
||||
return Widget.extend({
|
||||
/**
|
||||
* Renders the control as a HTML string.
|
||||
*
|
||||
* @method renderHtml
|
||||
* @return {String} HTML representing the control.
|
||||
*/
|
||||
renderHtml: function() {
|
||||
var self = this;
|
||||
|
||||
self.addClass('iframe');
|
||||
self.canFocus = false;
|
||||
|
||||
return (
|
||||
'<iframe id="' + self._id + '" class="' + self.classes() + '" tabindex="-1" src="' +
|
||||
(self.settings.url || "javascript:\'\'") + '" frameborder="0"></iframe>'
|
||||
);
|
||||
},
|
||||
|
||||
/**
|
||||
* Setter for the iframe source.
|
||||
*
|
||||
* @method src
|
||||
* @param {String} src Source URL for iframe.
|
||||
*/
|
||||
src: function(src) {
|
||||
this.getEl().src = src;
|
||||
},
|
||||
|
||||
/**
|
||||
* Inner HTML for the iframe.
|
||||
*
|
||||
* @method html
|
||||
* @param {String} html HTML string to set as HTML inside the iframe.
|
||||
* @param {function} callback Optional callback to execute when the iframe body is filled with contents.
|
||||
* @return {tinymce.ui.Iframe} Current iframe control.
|
||||
*/
|
||||
html: function(html, callback) {
|
||||
var self = this, body = this.getEl().contentWindow.document.body;
|
||||
|
||||
// Wait for iframe to initialize IE 10 takes time
|
||||
if (!body) {
|
||||
setTimeout(function() {
|
||||
self.html(html);
|
||||
}, 0);
|
||||
} else {
|
||||
body.innerHTML = html;
|
||||
|
||||
if (callback) {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user