Javascript,在自己的脚本中使用外部脚本
Javascript, use external script in own script
我的问题如下:
我想使用 https://github.com/olivier-m/minislate 作为我项目的一部分。 Github 上的 README 说明将以下代码注入到使用脚本的网站中,如下所示:
<script src="js/minislate.js"></script>
<script>
window.addEventListener('DOMContentLoaded', function() {
var editor = new Minislate.simpleEditor('#editable');
});
</script>
但我必须将它用作我自己脚本的一部分,而不是在实际网站上 - 我只是想将它分开。
这就是我目前拥有的:
而不是我使用 require.js:
requirejs(["./libs/minislate.min"]);
在另一个脚本中
define([], function () {
var EditTexUtil = function (iframe, keyWord) {
this.addWYSIWYGInterface = function () {
var $editableElements = $(iframe).contents().find(keyWord);
$editableElements.each(function () {
var editor = new Minislate.simpleEditor($(this));
});
}
}
return EditTexUtil;
})
如您所见,我正在修改一些 iframe 内部内容,具体取决于关键字。
发生以下错误:
未捕获的 ReferenceError: Minislate 未定义
那怎么解决呢?
我想我遗漏了一些一般性的东西,这就是我在这里问的原因。
如果需要在我们的其他脚本中解析 Minislate,您必须使用 require 而不是 RequireJS 的 define 函数:
require(['./libs/minislate'], function (Minislate) {
//this part will run when minslate.js is loaded and parsed, hence Minislate is defined
//other code goes here
})
我的问题如下:
我想使用 https://github.com/olivier-m/minislate 作为我项目的一部分。 Github 上的 README 说明将以下代码注入到使用脚本的网站中,如下所示:
<script src="js/minislate.js"></script>
<script>
window.addEventListener('DOMContentLoaded', function() {
var editor = new Minislate.simpleEditor('#editable');
});
</script>
但我必须将它用作我自己脚本的一部分,而不是在实际网站上 - 我只是想将它分开。
这就是我目前拥有的:
而不是我使用 require.js:
requirejs(["./libs/minislate.min"]);
在另一个脚本中
define([], function () {
var EditTexUtil = function (iframe, keyWord) {
this.addWYSIWYGInterface = function () {
var $editableElements = $(iframe).contents().find(keyWord);
$editableElements.each(function () {
var editor = new Minislate.simpleEditor($(this));
});
}
}
return EditTexUtil;
})
如您所见,我正在修改一些 iframe 内部内容,具体取决于关键字。 发生以下错误:
未捕获的 ReferenceError: Minislate 未定义
那怎么解决呢? 我想我遗漏了一些一般性的东西,这就是我在这里问的原因。
如果需要在我们的其他脚本中解析 Minislate,您必须使用 require 而不是 RequireJS 的 define 函数:
require(['./libs/minislate'], function (Minislate) {
//this part will run when minslate.js is loaded and parsed, hence Minislate is defined
//other code goes here
})